1

1 つの名前空間で定義された simpleType があります。

この simpleType を別の名前空間で使用します。これまでのところ大丈夫です。しかし、JaxB はそれを使用するすべてのパッケージで simpleType を生成します。私は、グローバルな simpleType 定義が 1 つだけ必要であると予想していました。

例: common.xsd (ここでは simpleType) -> package.common.MyEnum account.xsd -> package.account.SomeMeComplexType + package.account.MyEnum

お願いします: common.xsd -> package.common.MyEnum account.xsd -> package.account.SomeMeComplexType + package.common.MyEnum への参照

common.xsd:

<xs:simpleType name="barringScope">
    <xs:restriction base="xs:long">
        <xs:enumeration value="1"/>
        <xs:enumeration value="2"/>
        <xs:enumeration value="3"/>
    </xs:restriction>
</xs:simpleType>  

バインディング.xjb:

<jxb:bindings version="2.1" xmlns:jxb="http://java.sun.com/xml/ns/jaxb" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <jxb:bindings schemaLocation="common.xsd">
      <jxb:bindings node="xsd:simpleType[@name='barringScope']">
          <jxb:typesafeEnumClass>
               <jxb:typesafeEnumMember value="1" name="one"/>
               <jxb:typesafeEnumMember value="2" name="two"/>
               <jxb:typesafeEnumMember value="3" name="three"/>
          </jxb:typesafeEnumClass>
      </jxb:bindings>
  </jxb:bindings>
</jxb:bindings>
4

0 に答える 0