几种常用的webservice客户端和spring集成的方法

源:http://my.oschina.net/zimingforever/blog/212492

评:

项目需要,这两天系统要调一个webservice的服务,webservice的东西都扔了好几年了,怎么使用都忘得一干二净了。以前都是使用系统现成的框架掉一个方法就行了,现在几乎是从0开始一点一点搭建环境啊

由于只是调用服务,所以我这边只要实现一下spring环境下接入websevice就行了

第一中尝试的是使用springws的WebServiceTemplate

配置的方法如下:

?

1

2

3

<beanid="xxxWebService"class="org.springframework.ws.client.core.WebServiceTemplate">

<propertyname="defaultUri"value="http://XXX.net:8080"/>

</bean>

第二种尝试我用了jaxws

配置方法如下:

?

1

2

3

4

5

<beanid="xxxWebService"class="org.springframework.remoting.jaxws.JaxWsPortProxyFactoryBean">

<propertyname="serviceInterface"value="com.xxx.UploadFileService"/>

<propertyname="namespaceUri"value="http://XXX.net:8080"/>

<propertyname="wsdlDocumentUrl"value="http://XXX.net:8080/XXXServicePort?WSDL"/>

</bean>

第3中我尝试的是CXF

?

1

2

3

4

5

6

7

<importresource="classpath:META-INF/cxf/cxf.xml"/>

<importresource="classpath:META-INF/cxf/cxf-extension-soap.xml"/>

<importresource="classpath:META-INF/cxf/cxf-servlet.xml"/>

<jaxws:clientid="xxxWebService"serviceclass="com.xxx.UploadFileService"

address="http://XXX.net:8080">

</jaxws:client>

第4种我用的是xfire,也是最后项目采用的方法

?

1

2

3

4

5

6

7

8

<beanid="dwdsspWebService"class="org.codehaus.xfire.spring.remoting.XFireClientFactoryBean">

<propertyname="serviceClass">

<value>com.xxx.UploadFileService</value>

</property>

<propertyname="wsdlDocumentUrl">

<value>http://XXX.net:8080/XXXServicePort?WSDL</value>

</property>

</bean>

参考文档:http://blog.csdn.net/kkdelta/article/details/3987591

http://blog.csdn.net/kkdelta/article/details/7290769

http://blog.csdn.net/jadyer/article/details/9002984

http://blog.csdn.net/vickychen89/article/details/6606571

总结一下,现在项目中很少用webservice了,所以一下子用起来还挺捉急,这里记录下集中常用的方法备忘一下,没有具体的对比各个方式优劣。

相关推荐