Jaxb 使用JAX-WS(Apache CXF/Metro)在xsd中呈现为xs:string的java.util.Date属性
我使用ApacheCXF基于WSDL生成了一些模型类。然后,我添加了一个jaxb绑定文件,将所有xs:dateTime和xs:date元素转换为java.util.date,而不是默认的XMLGregorianCalendar:Jaxb 使用JAX-WS(Apache CXF/Metro)在xsd中呈现为xs:string的java.util.Date属性,jaxb,wsdl,jax-ws,cxf,java-metro-framework,Jaxb,Wsdl,Jax Ws,Cxf,Java Metro Framework,我使用ApacheCXF基于WSDL生成了一些模型类。然后,我添加了一个jaxb绑定文件,将所有xs:dateTime和xs:date元素转换为java.util.date,而不是默认的XMLGregorianCalendar: <jxb:javaType name="java.util.Date" xmlType="xs:date" parseMethod="org.apache.cxf.tools.common.DataTypeAdapter
<jxb:javaType name="java.util.Date" xmlType="xs:date"
parseMethod="org.apache.cxf.tools.common.DataTypeAdapter.parseDate"
printMethod="org.apache.cxf.tools.common.DataTypeAdapter.printDate"/>
<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"/>
我可以想象,type=String.class可能是所有属性生成为xs:String字段的原因
当然,我可以手动编辑所有对象,但我真的在Metro的ApacheCfx中寻找解决方案,以声明的方式防止这个问题
我希望你们能帮助我,因为这个问题让我陷入了僵局
谢谢
@XmlElement(required = true, type = String.class)
@XmlJavaTypeAdapter(Adapter1 .class)
protected Date datumTijdBedrijfsdocument;