您的位置:首页 > 编程语言 > Java开发

CXF全接触(八) --- 使用wsdl2java时转换XMLGregorianCalendar为Date

2009-02-26 12:42 901 查看
使用wsdl2java命令生成Java代码的方法请参阅:

http://blog.csdn.net/kunshan_shenbin/archive/2009/02/10/3873049.aspx

默认生成的代码中,Date类型全部转换成XMLGregorianCalendar类型。

使用wsdl2java的-b参数指定配置文件可以进行替换。

配置文件如下所示:

jaxb-binding-date.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.test.com/']">
<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>


注意:其中http://service.test.com/替换为自己的namespace。

命令格式如下:

wsdl2java -b jaxb-binding-date.xml http://localhost:8080/cxfservice/services/XXXXX?wsdl
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: