`
jiqimiao
  • 浏览: 59040 次
  • 性别: Icon_minigender_1
  • 来自: 常州
社区版块
存档分类
最新评论

学习Java6(一) WebServices (2)客户端

 
阅读更多
Java6 WebServices (一)服务端这篇文章中和大家分享了Java6 WebServices 服务端的写法,光有服务端还不行,还要有客户端才行啊。看了一些网友的相关文章,都只给出了服务端的写法,没有说客户端怎么说。经过一番研究,终于搞定了客户端,今天偶就和大家分享下。
首先启动Java6 WebServices (一)服务端一文中写好的服务端。
新建个项目。命令行到src目录执行,
wsimport -keep http://localhost:8080/HelloService?wsdl
会自动生成一些代码。


packageorg.hermit.study.jdk.client;

importjavax.jws.WebMethod;
importjavax.jws.WebParam;
importjavax.jws.WebResult;
importjavax.jws.WebService;
importjavax.jws.soap.SOAPBinding;


/**
*ThisclasswasgeneratedbytheJAXWSSI.
*JAX-WSRI2.0_02-b08-fcs
*Generatedsourceversion:2.0
*
*/
@WebService(name
="Hello",targetNamespace="http://jdk.study.hermit.org/client")
@SOAPBinding(style
=SOAPBinding.Style.RPC)
publicinterfaceHello{


/**
*
*
@paramarg0
*
@return
*returnsjava.lang.String
*/
@WebMethod
@WebResult(partName
="return")
publicStringsayHello(
@WebParam(name
="arg0",partName="arg0")
Stringarg0);

}

packageorg.hermit.study.jdk.client;

importjava.net.MalformedURLException;
importjava.net.URL;
importjavax.xml.namespace.QName;
importjavax.xml.ws.Service;
importjavax.xml.ws.WebEndpoint;
importjavax.xml.ws.WebServiceClient;


/**
*ThisclasswasgeneratedbytheJAXWSSI.
*JAX-WSRI2.0_02-b08-fcs
*Generatedsourceversion:2.0
*
*/
@WebServiceClient(name
="HelloService",targetNamespace="http://jdk.study.hermit.org/client",wsdlLocation="http://localhost:8080/HelloService?wsdl")
publicclassHelloService
extendsService
{

privatefinalstaticURLHELLOSERVICE_WSDL_LOCATION;

static{
URLurl
=null;
try{
url
=newURL("http://localhost:8080/HelloService?wsdl");
}
catch(MalformedURLExceptione){
e.printStackTrace();
}
HELLOSERVICE_WSDL_LOCATION
=url;
}

publicHelloService(URLwsdlLocation,QNameserviceName){
super(wsdlLocation,serviceName);
}

publicHelloService(){
super(HELLOSERVICE_WSDL_LOCATION,newQName("http://jdk.study.hermit.org/client","HelloService"));
}

/**
*
*
@return
*returnsHello
*/
@WebEndpoint(name
="HelloPort")
publicHellogetHelloPort(){
return(Hello)super.getPort(newQName("http://jdk.study.hermit.org/client","HelloPort"),Hello.class);
}

}

下面我们再写个测试,看看能不能用:
packageorg.hermit.study.jdk.client.test;

importorg.hermit.study.jdk.client.Hello;
importorg.hermit.study.jdk.client.HelloService;


publicclassTestClient{
publicstaticvoidmain(String[]args){
HelloServiceservice
=newHelloService();
Hello_hello
=service.getHelloPort();
System.out.println(_hello.sayHello(
"hermit"));
}
}
执行。
控制台输出:
hello:hermit

ok!搞定。
java6搞定web service就这么简单。。。。。。。。。。。。。。。。。。。。。。。。。。

xfire危险了。。。。。。。。。。。。。。。。。。。。。。。。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics