Java wscompile JAX-RPC生成日历对象而不是日期
使用JAX-RPC wscompile ANT任务从WSDL生成java类时,我遇到了一个问题 我的ant脚本:Java wscompile JAX-RPC生成日历对象而不是日期,java,web-services,jax-rpc,Java,Web Services,Jax Rpc,使用JAX-RPC wscompile ANT任务从WSDL生成java类时,我遇到了一个问题 我的ant脚本: <taskdef name="wscompile" classname="com.sun.xml.rpc.tools.ant.Wscompile" classpathref="jaxrpc.classpath"/> <taskdef name="wsdeploy" classname="com.sun.xml.rpc.tools.ant.Wsdeploy" clas
<taskdef name="wscompile" classname="com.sun.xml.rpc.tools.ant.Wscompile" classpathref="jaxrpc.classpath"/>
<taskdef name="wsdeploy" classname="com.sun.xml.rpc.tools.ant.Wsdeploy" classpathref="jaxrpc.classpath"/>
<wscompile
fork="true"
base="${target.jaxrpc.dir}"
server="true"
client="false"
features="documentliteral"
model="${target.jaxrpc.dir}/model.xml.gz"
debug="true"
keep="true"
verbose="true"
config="${src.main.config.dir}/jaxrpc-service-config.xml">
<classpath refid="jaxrpc.classpath"/>
</wscompile>
在我的wsdl中有日期类型的对象,问题是JAX-RPC生成日历对象。有没有办法设置一些标志或以某种方式强制JAX-RPC生成日期对象?这是因为Enterprise Web Services 1.1规范定义了Java类和XML类型之间的默认映射。但是,您可以更改应用程序的默认映射。您可以通过编辑元素的内容来更改映射JAX-RPC映射文件。在您的情况下,您必须进行以下更改:
<java-wsdl-mapping>
...
<java-xml-type-mapping>
<java-type>java.util.Date</java-type>
<root-type-qname xmlns:qn="http://www.w3c.org/2001/XMLSchema">qn:dateTime</root-type-qname>
</java-xml-type-mapping>
...
<java-wsdl-mapping>
...
日期类型
qn:日期时间
...
谢谢。但是我不知道我必须在哪里指定这个文件。。。mapping=“${src.main.config.dir}/jaxrpc mapping-…我将其放入我的任务中,但任务将wsdl中的所有对象写入此文件中。它覆盖了它,我的更改不会生效。只需浏览一下这里的所有详细信息。谢谢,你真的帮助了我。