sse*_*ano 2 java jaxb jaxb2 maven-jaxb2-plugin
我有这个XSD:(片段)
<xs:complexType name="complexA">
<xs:sequence>
<xs:element ref="abstractA" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:element name="abstractA" abstract="true"/>
<xs:element name="concreteA" type="concreteComplexA" substitutionGroup="abstractA"/>
<xs:complexType name="concreteComplexA">
<xs:attribute name="class" type="classId" use="required"/>
<xs:attribute name="property" type="namingId" use="required"/>
<xs:attribute name="value" type="xs:string" use="required"/>
</xs:complexType>
Run Code Online (Sandbox Code Playgroud)
JAXB输出一个叫做的类,concreteComplexA我可以让它输出concreteA名称吗?
该XSD是第三方所以它不能被修改.
谢谢!
你做.
您可以使用外部绑定文件来控制生成的类的名称.有关示例,请参阅我对类似问题的回答:
JAXB将Java对象映射到类型而不是元素的原因是对于全局复杂类型(如在您的示例中),可能有许多引用它的全局元素:
<xs:element name="concreteA" type="concreteComplexA" substitutionGroup="abstractA"/>
<xs:element name="anotherConcreteA" type="concreteComplexA" substitutionGroup="abstractA"/>
<xs:complexType name="concreteComplexA">
<xs:attribute name="class" type="classId" use="required"/>
<xs:attribute name="property" type="namingId" use="required"/>
<xs:attribute name="value" type="xs:string" use="required"/>
</xs:complexType>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1452 次 |
| 最近记录: |