ws jaxb自定义外部映射

时间:2011-08-11 19:46:11

标签: binding wsdl jaxb wsimport

我必须自定义JAXB外部映射文件。 已经红色tutorial关于此并且找不到任何合适的JAXB自定义示例。我的场景是我有两个WSDL文件主WSDL和辅助WSDL,它包含在主WSDL中。在辅助WSDL文件中有一个complexType定义,它有一个我想要自定义的名称。该complexType的BTW名称为objectFactory。所以现在你知道我真正需要的外部定制。

到目前为止,当我跑wsimport path-to-my-main-wsdl -b customBindings.jaxb时 输出就像

[ERROR] XPath evaluation of "//xs:complexType[@name='objectFactory']" results in empty target node
line 2 of file:/customBindings.jaxb

档案customBindings.jaxb看起来像

<jxb:bindings version="1.0" xmlns:jxb="http://java.sun.com/xml/ns/jaxb" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <jxb:bindings schemaLocation="path-to-my-secondary-wsdl#types?schema1" node="//xs:complexType[@name='objectFactory']">
        <jxb:class name="MyObjectFactory" />
    </jxb:bindings>
</jxb:bindings>

我的customBindings.jaxb文件的第二行有两个属性schemaLocationnode。属性schemaLocation是否需要指向主WSDL或辅助WSDl?属性node是想要复杂类型的精确路径(XPath)还是这样可以? XPath(node属性)中的命名空间是什么,它必须是xs或什么?实际上typesschema1代表的是schemaLocation

THX

1 个答案:

答案 0 :(得分:0)

我在研究同样的问题时遇到了你的问题。

在此页面上可以找到一些模糊的提示:http://jaxb.java.net/guide/Dealing_with_errors.html

该页面底部会显示“空目标节点”消息的原因。