环境:spring3.0.5+CXF2.4.1+JDK1.6,成功搭建服务端和客户端。
1、CXF2.4.1下载地址:
https://archive.apache.org/dist/cxf/2.4.1/
2、下载下来,解压好后,在lib目录下,它已经自带了spring的jar包。
3、写代码-基于jetty服务器的版本:
* 参照:http://blog.csdn.net/crazycoder2010/article/details/6673269
* 参照:http://weberyb.iteye.com/blog/446301 (用JDK1.6,不需要拷贝JAR包至jre/lib目录)
4、基于tomcat的版本
* 参照:http://blog.csdn.net/feixueqianer/article/details/5850574
* 参照:http://www.360doc.com/content/12/0214/18/8713562_186615375.shtml
=============================================================
5、webservice hashmap
* 参照:http://jyao.iteye.com/blog/1216342
* 另外,CXF专题:http://www.iteye.com/blogs/subjects/CXF_Step_By_Step
6、关于jaxbelement(webservice客户端用的封装对象,要用objectFactory.createXXX,才能创建jaxb对象)
* 参照:http://chigooo.iteye.com/blog/1695017
7、关于webservice传对象
* 利用jdk里面的wsimport,就可以轻松解决,除了HashMap中引用List不行之外(xfire,cxf全试了,全不行),如HashMap<String ,List<KPIEntity>> ,其余的都没问题。
http://gavin-chen.iteye.com/blog/340675
上面文章中包含:wsimport常用命令:wsimport -s generated http://localhost:8080/
webservice_xfire_obj/services/pudong_obj_ws?wsdl
http://www.cnblogs.com/simle/archive/2011/11/03/2233417.html public static void main(String[] args)
{
TestService_Service serviceFactory = new TestService_Service();
TestService service = serviceFactory.getTestServicePort();
try
{
System.out.println(service.test(null));
}
catch (SOAPException_Exception ex)
{
System.out.println(ex.getMessage());
}
}
PudongObjWs serviceFactory = new PudongObjWs();
PudongObjWsPortType service = serviceFactory.getPudongObjWsHttpPort();
try {
System.out.println(service.getUser(0).getUserId().getValue());
} catch (Exception ex) {
System.out.println(ex.getMessage());
}