生成基本 int 的枚举

问题描述 投票:0回答:1

我正在尝试使用 Maven

int
从简单类型的基础
maven-jaxb2-plugin
生成枚举。但没有生成任何枚举。

我可以看到生成器正在使用绑定文件,因为如果找不到映射,它会抛出错误。

当我将基数更改为

string
时,会生成枚举(但不允许我更改基数)。

那么我是否配置错误,或者根本不可能?

xsd-摘录:

<xs:simpleType name="codeType">
  <xs:restriction base="xs:int">
    <xs:enumeration value="200"/>
    <xs:enumeration value="400"/>
  </xs:restriction>
</xs:simpleType>

绑定文件摘录:

<jaxb:bindings schemaLocation="some.xsd">
  <jaxb:bindings node="//xs:simpleType[@name='codeType']/xs:restriction/xs:enumeration[@value='200']">
    <jaxb:typesafeEnumMember name="OK" />
  </jaxb:bindings>
  <jaxb:bindings node="//xs:simpleType[@name='codeType']/xs:restriction/xs:enumeration[@value='400']">
    <jaxb:typesafeEnumMember name="BAD_REQUEST" />
  </jaxb:bindings>
</jaxb:bindings>
xsd jaxb maven-jaxb2-plugin
1个回答
0
投票

我终于设法生成了枚举。

绑定文件摘录:

<jaxb:bindings schemaLocation="some.xsd">
  <jaxb:bindings node="//xs:simpleType[@name='codeType']">
    <jaxb:typesafeEnumClass>
      <jaxb:typesafeEnumMember value="200" name="OK" />
      <jaxb:typesafeEnumMember value="400" name="BAD_REQUEST" />
    </jaxb:typesafeEnumClass>
  </jaxb:bindings>
</jaxb:bindings>

参见15.4。自定义枚举映射 - Red Hat JBoss Fuse 6.0 使用 JAX-WS 开发应用程序 了解更多详细信息。

© www.soinside.com 2019 - 2024. All rights reserved.