像这样的内联选项是什么
xjc-d。 -b bindings.xjb Derived.xsd
我的 bindings.xsd 的位置
<bindings scd="~tns:NameType">
<class ref="com.bcbsmt.eie.pojo.commontypes.NameType"/>
</bindings>
我想做的就是防止到处重复 NameType。要求是严格的内部绑定(bind)。
我在 Derived.xsd 中试过类似的东西
<xs:element name="Name">
<xs:annotation>
<xs:appinfo>
<jaxb:class implClass="com.bcbsmt.eie.pojo.commontypes.NameType"></jaxb:class>
</xs:appinfo>
</xs:annotation>
</xs:element>
但这没有成功。任何想法
最佳答案
我不确定我是否完全理解您的问题,但下面是一个示例,说明如何使用 jaxb:class
模式注释指向现有类。
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
jaxb:version="2.1">
<xs:element name="foo">
<xs:complexType>
<xs:sequence>
<xs:element ref="bar"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="bar">
<xs:complexType>
<xs:annotation>
<xs:appinfo>
<jaxb:class ref="example.BarImpl"></jaxb:class>
</xs:appinfo>
</xs:annotation>
<xs:sequence>
<xs:element name="name" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
如果您想重用从 XML 模式生成的所有类型,那么您可能会发现剧集文件很有用:
关于java - jaxb 中的内联绑定(bind)规范,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9116459/