一.创建两个Java工程,一个做为webservice的服务端,一个做为webservice的客户端。
二.在WSService工程中,编写service端,如下所示
package com.webservice.service; import javax.jws.WebService; import javax.xml.ws.Endpoint; /* * @WebService注解 * 标注该类为webservice的服务端 */ @WebService public class HelloService { /* * 一个service类,必须有一个能够被调用的方法 * 该方法不能是static和finally */ public String say(){ return "Hello World!!"; } public static void main(String[] args) { /* * 参数1:服务地址 * 参数2:服务类 */ Endpoint.publish("http://127.0.0.1:1234/wsservice/hello",new HelloService()); } }
点击运行,效果如下。
此时webservice的服务端已经准备就绪,只等待客户端来调用了。为了让客户端能够使用服务端,还要做一些准备工作,首先我们要知道wsdl是什么小编,在浏览器中输入我们之前定义的服务地址,如下图所示:
这就是生成的esdl,其实就是使用说明书而已,使用情况我们在客户端代码中体现。
三.在cmd中输入命令:wsimport -s . http://127.0.0.1:1234/wsservice/hello?wsdl,生成客户端能够使用的代码。
由于D:\devEnv\eclipse\workspace\WSClient\src正好是客户端WSClient工程的代码目录,所以刷新WSClient工程,将会看到如下生成的java文件。
四.编写客户端代码
package com.webservice.client; import com.webservice.service.HelloService; import com.webservice.service.HelloServiceService; public class HelloClient { public static void main(String[] args) { /* * WSDL文件中: * <service name="HelloServiceService"> * 得出 */ HelloServiceService hss = new HelloServiceService(); /* * WSDL文件中: * <port name="HelloServicePort" binding="tns:HelloServicePortBinding"> * 得出 */ HelloService hs = hss.getHelloServicePort(); String s = hs.say(); System.out.println(s); } }
运行客户端代码,输出“Hello World!!”,如下所示。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。