当前位置:首页 > java 调用webservice的各种方法总结
修改service.xml 文件,加入以下代码:
Xml代码
1. 2.
3.
5.
7.
9. com.myeclipse.wsExample.IHelloWorldService 10.
11. 12.
13.
15. com.myeclipse.wsExample.HelloWorldServiceImpl 16.
17. 18.
19. 20.
21. 22.
23.
25. 26.
把整个项目部署到tomcat服务器中 ,打开浏览器,输入http://localhost:8989/HelloWorld/services/HelloWorldService?wsdl
客户端实现如下:
Java代码
1. package com.myeclipse.wsExample.client; 2.
3. import java.net.MalformedURLException; 4.
5. import java.net.URL; 6. 7. 8.
9. import org.codehaus.xfire.XFireFactory; 10.
11.import org.codehaus.xfire.client.Client; 12.
13.import org.codehaus.xfire.client.XFireProxyFactory; 14.
15.import org.codehaus.xfire.service.Service; 16.
17.import org.codehaus.xfire.service.binding.ObjectServiceFactory; 18. 19. 20.
21.import com.myeclipse.wsExample.IHelloWorldService; 22. 23. 24.
25.public class HelloWorldClient { 26.
27.public static void main(String[] args) throws MalformedURLException, Exception { 28.
29.// TODO Auto-generated method stub 30.
31.Service s=new ObjectServiceFactory().create(IHelloWorldService.class); 32.
33.XFireProxyFactory xf=new XFireProxyFactory(XFireFactory.newInstance().getXFire()); 34.
35.String url=\dService\; 36. 37. 38.
39. try 40.
41. { 42.
43. 44.
45. IHelloWorldService hs=(IHelloWorldService) xf.create(s,url); 46.
47. String st=hs.example(\); 48.
49. System.out.print(st); 50.
51. } 52.
53. catch(Exception e) 54.
55. { 56.
57. e.printStackTrace(); 58.
59. }
60. 61. } 62. 63. 64. 65.} 66.
这里再说点题外话,有时候我们知道一个wsdl地址,比如想用java客户端引用.net 做得webservice,使用myeclipse引用,但是却出现无法通过验证的错误,这时我们可以直接在类中引用,步骤如下:
Java代码
1. public static void main(String[] args) throws MalformedURLException, Exception { 2.
3. // TODO Auto-generated method stub 4.
5. Service s=new ObjectServiceFactory().create(IHelloWorldService.class); 6.
7. XFireProxyFactory xf=new XFireProxyFactory(XFireFactory.newInstance().getXFire()); 8.
9. 10.
11.//远程调用.net开发的webservice 12.
13.Client c=new Client(new URL(\es/qqOnlineWebService.asmx?wsdl\));
共分享92篇相关文档