complexType中的XJC javaType适配器

Fra*_*fka 2 java xml xsd jaxb xjc

我想让XJC在生成bean时在complexType中使用javaType标记.这是不允许的?我真的错过了很好的文档和一些可以理解的错误信息.

这是我正在尝试失败的错误:

  • 编译器无法兑现此转换自定义.它附加到错误的位置,或与其他绑定不一致.
  • (以上自定义附加到架构中的以下位置)

这是XSD:

<xs:complexType name="MyMap">
  <xs:annotation>
    <xs:appinfo>
      <xjc:javaType name="my.company.HashMapHidingGenerics" adapter="my.company.adapter.MyMapAdapter" />
    </xs:appinfo>
  </xs:annotation>
  <xs:sequence>
    <xs:element minOccurs="0" maxOccurs="unbounded" name="entry" type="MyEntry"/>
  </xs:sequence>
</xs:complexType>
<xs:complexType name="MyEntry">
  <xs:attribute name="someAttribute" use="optional"/>
</xs:complexType>
Run Code Online (Sandbox Code Playgroud)

dma*_*a_k 5

坏消息:<javaType>只支持简单类型(请参阅绑定声明,是否可以使用JAXB从模式映射到java.util.Map?).

但是,您可以通过使用来实现所需@XmlAdapter.