2011-05-30 39 views
4

我遇到了问题wsimport。在我的一个wsdl中,必须是wsimport ed,我有一个名为"objectFactory"的complexType。有什么办法可以告诉命令wsimport创建时导入不同的类来维护JAXB连接,如ObjectFactory.java。换句话说,我可以告诉wsimport而不是创建ObjectFactory.java一些自定义类如MyCustomFactory.javajava wsimport重命名/不同ObjectFactory.java

是否可以自定义映射方式complexType name="objectFactory"将映射到不同名称的对象,如MyObjectFactory.java

THX

回答

2

JAX-WS(其中wsimport是其一部分)使用JAXB用于生成所述XML绑定文件(和执行实际结合)。所以你想看看this documentation on customizing JAXB bindings。它也适用于你的情况。

在你的情况,你会使用这样的:

<xsd:complexType name="objectFactory"> 
    <xsd:annotation> 
    <xsd:appinfo> 
    <jxb:class name="MyObjectFactory" /> 
    </xsd:appinfo> 
    </xsd:annotation> 
    <!-- ... rest of your specification ... -> 
</xsd:complexType> 

这个例子是在线定制你的XML Schema/WSDL。您也可以将此信息作为external configuration提供。

+0

如果我理解这个权利,我需要更改WSDL文件并将上面的示例插入到WSDL文件中?或者我可以创建外部绑定文件将其转换为适当的类?示例请参阅 – zmeda 2011-06-01 09:27:40

+0

更改WSDL是一种**方法。指定外部配置的示例可以在我链接到的文档中找到。 – 2011-06-01 09:28:33