CXF 开发客户端问题和AXIS监控TCP数据

自己生成发布服务端和客户端:

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")

 

 

 

TCPMON监控

 java -classpath E:/axis.jar org.apache.axis.utils.tcpmon

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值