使用NETBEAN构建简单的WEB Service – 服务端篇

服务端开发流程:

  1. 定义服务端SEI (WebService EndPoint Interface) 接口
  2. 实现服务端SEI 接口
  3. 部署服务端(即发布你定义的那些SEI接口到互联网,给客户端调用)

服务端开发

新建一个WEB项目

一路向下

工程就创建完了,接下来就是实现SEI接口和SEI的实现类了

SEI (Web Service EndPoint Interface)的实现

定义服务端接口

这样服务端接口类就定义好了,接下来要定义用于处理客户端请求的方法。

定义接口方法

定义一个方法,用于处理客户端请求,此方法会接受客户端发送来的消息,并且将其返回回去

public interface HelloWS {
        public String greeting(String msg);
}

添加WEB服务编码

使用Web service 编码

  • @WebService – SEI 和 SEI 实现类
  • @WebMethod – SEI 的所有方法

添加注解

接下来就是实现刚才定义的SEI接口了

创建实现类

添加实现接口HelloWS

public class HelloWSImpl implements HelloWS {
    
}

接下来实现HelloWS接口里的函数

@Override
public String greeting(String msg) {
	return "Greeting from server, get msg: " + msg;
}

这样下来,当客户端请求服务端web service的gretting函数时,服务端会返回一句话 Greeting from server, get msg: [客户端传递的参数]

部署WEB Service

创建一个新的类叫做”ServerDepoly”, 用它来发布刚才定义的Web Service

添加入口方法即:main函数

public static void main(String[] args) {
            
}

然后在main方法里使用EndPoint.publish()函数用来发布Web Service

在文档中可以看到这个函数需要2个参数

一个是address,即WEB服务的URL

第二个是Implementor,即要部署的WEB服务的实现类,这里应该就是之前定义的那个HelloWSImpl类

所以接下来就简单了:

public static void main(String[] args) {
	String addr="http://127.0.0.1:8080/hellows";
	Object depolyService = new HelloWSImpl();
	Endpoint.publish(addr,depolyService);
	System.out.print("Web Service is published.");
}

这样,发布部分的代码就差不多写完了,来运行下试试看

OK,看了WEB服务已经成功发布了,接下来去浏览器试试看能不能请求到WSDL文件

http://127.0.0.1:8080/hellows?wsdl

大功告成,WSDL文件也正确请求到了,这样服务端这里的代码就完成了。

接下来就是开发客户端了。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください