针对特定类的JAXB定制

时间:2012-01-11 19:26:47

标签: wsdl jaxb xjc

是否可以将JAXB自定义绑定应用于WSDL中的一个(或一组)特定类?

从我收集的信息中,通过globalBidings元素将自定义应用于从WSDL生成的所有类。我希望能够命名应用自定义的类。

所以而不是说...

<?xml version="1.0" encoding="UTF-8"?>
<bindings xmlns="http://java.sun.com/xml/ns/jaxb" version="2.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <globalBindings>
        <superClass name="com.syh.Shape"/>
    </globalBindings>
</bindings>

...是否有限制超类的范围?

1 个答案:

答案 0 :(得分:0)

您可以仅使用<bindings>来自定义特定的架构元素(即复杂类型)。对于您的任务,我建议您使用Inheritance plugin

<jaxb:bindings schemaLocation="schema.xsd" node="/xsd:schema">
    <jaxb:bindings node="xsd:complexType[@name='shape']">
        <inheritance:extends>com.syh.Shape</inheritance:extends>
    </jaxb:bindings>
</jaxb:bindings>