自己生成发布服务端和客户端:
RESTFUL风格
http://www.cnblogs.com/hoojo/archive/2012/07/23/2605219.html
需要引入的JAR包:CXF的,配置好 CXFServlet 。另外引入jsr311-api-1.1.1.jar。
自己生成客户端:
1、命令生成:
CXF命令生成客户端:
先将CXF2.5源代码下载到D:\webservice\apache-cxf-2.2.5\apache-cxf-2.2.5\bin。使用以下命令:
D:\webservice\apache-cxf-2.2.5\apache-cxf-2.2.5\bin>wsdl2java -d d:/webservice/GenJavaCode/Rebook/CXF2 -client http://172.31.68.103:8082/CEAServiceFront/webservice/RebookFlightService?wsdl
使用SOAPUI生成客户端:
1、生成客户端时报错:interface with the same name "com.ceair.muss.rebook.Exception" is already in use. Use a class customization to resolve this conflict.
解决:不要指定Package再次生成OK
2、生成的客户端代码中Date类型变为XMLGregorianCalendar
解决:需要在CXF的BIN目录添加一个转换的XML
a.xml
<jaxws:bindings xmlns:jaxws="http://java.sun.com/xml/ns/jaxws" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:jxb="http://java.sun.com/xml/ns/jaxb" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"> <jaxws:bindings node="wsdl:definitions/wsdl:types/xs:schema[@targetNamespace='http://service.front.ceair.com.cn/']"> <jxb:globalBindings xmlns:jxb="http://java.sun.com/xml/ns/jaxb" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <jxb:javaType name="java.util.Date" xmlType="xs:dateTime" parseMethod="org.apache.cxf.tools.common.DataTypeAdapter.parseDateTime" printMethod="org.apache.cxf.tools.common.DataTypeAdapter.printDateTime"/> </jxb:globalBindings> </jaxws:bindings> </jaxws:bindings>
然后在SOAP的Bindings选项添加a.xml
成功生成
注意:生成的转换类在目录org\w3\_2001\xmlschema\Adapter1.java手工复制到对应目录。
3、生成的目录中有Exception类,
删除生成的Exception类,将Exception_Exception类扩展java.lang.Exception
运行后报错:
根据提示,删除 ObjectFactory类中Exception相关的方法,成功运行
4、运行后报错:
是生成的请求/返回类的命名空间冲突,根据提示,将GetIsCheckIn类头上增加命名空间代码
@XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "getIsCheckIn", propOrder = { "cancelCheckInRq" },namespace="http://namespace.thats.not.the.same.as.the.generated")
有的在Header里面添加了用户名密码验证
SatrImplService ss = new SatrImplService();//自动生成的类 Satr port = ss.getSatrImplPort();//自动生成的类 Client client= ClientProxy.getClient(port); client.getOutInterceptors().add(new ClientAuthInterceptor()); System.out.println(port.sayHello("hello,world"));
参考
https://blog.csdn.net/showgood119/article/details/78856038
TCPMON监控
java -classpath E:/axis.jar org.apache.axis.utils.tcpmon
相关推荐
cxf客户端调用axis服务端流程
cxf客户端调用axis服务端流程.docxcxf客户端调用axis服务端流程.docx
CXF 客户端最少jar包支持,CXF 客户端最少jar包支持,CXF 客户端最少jar包支持,
cxf soap header cxf soap header cxf soap header cxf soap header
Cxf客户端及服务器端,实现客户端和服务器端的权限验证,可以直接运行,很简单,开始研究cxf的时候很少有权限验证的资源,所有我实现 了之后,拿来跟大家分享
CXF客户端调用例子,本例子开发语言为JAVA,包内包含服务端跟客户端
apache-cxf-2.7.7以及cxf客户端所需要的jar包,命令生成webservice客户端
Java 调用webservice cxf客户端调用demo和服务端,包含jar包,服务端发布后直接用客户端调用
CXF客户端生成器,可以直接进入bin目下,运行wsdl2java
cxf调用webservice,客户端最少jar包,只需4个,告别找jar包的繁琐
springboot整合CXF发布webservice和客户端调用 项目中每个类都有详细的注释,保证都能看懂,不失为一个学习springboot整合cxf来学习webservice发布调用的好例子
自己写的代码(CXF生成的webservice客户端添加soapHeader代码),用到的工具和jar包都包含在里面,仅供参考,
基于SSL验证的Apache CXF客户端设计 1,服务器端Tomcat配置SSL支持 2,服务器端Web Service接口设计 3,客户端访问设计,包括代码和配置文件 详情请看博客:...
cxf客户端出现GBK编码问题解决cxf客户端出现GBK编码问题解决jar.rar
webservice客户端,框架为CXF,生成客户端的方式为自动(myeclipse生成)
CXF 开发手册, 包括下载,配置,客户端调用远程服务以及发布自己的接口为服务,供别人调用的全过程
3.这个服务端和客户端的小demo 在服务端 对外开放接口服务,然后在客户端 调用服务端的方法, 实现客户端(一个javaweb项目)对服务端(javaweb项目)方法的调用, 实际上就是发送和接收消息,实现两个系统间消息的...
webservice cxf 客户端创建实例
cxf-2.4.1+axis-1.4,整合spring3.0所用jar包
CXF客户端调用需要的最少包,版本cxf-2.7.18.jar。其中fastjson-1.2.34.jar是非必须的