Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在JaxB中全局定义simpleType_Jaxb_Simpletype - Fatal编程技术网

如何在JaxB中全局定义simpleType

如何在JaxB中全局定义simpleType,jaxb,simpletype,Jaxb,Simpletype,我在一个名称空间中定义了一个simpleType 我将在另一个名称空间中使用这个simpleType。到目前为止还可以。但是JaxB使用它在每个包中生成simpleType。我期望并且只需要一个全局simpleType定义 例如: common.xsd(这里是我的simpleType)->package.common.MyEnum account.xsd->package.account.somecomplexType+package.account.MyEnum 我想: common.xsd-

我在一个名称空间中定义了一个simpleType

我将在另一个名称空间中使用这个simpleType。到目前为止还可以。但是JaxB使用它在每个包中生成simpleType。我期望并且只需要一个全局simpleType定义

例如: common.xsd(这里是我的simpleType)->package.common.MyEnum account.xsd->package.account.somecomplexType+package.account.MyEnum

我想: common.xsd->package.common.MyEnum account.xsd->package.account.somecomplexType+对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>  

binding.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>