При попытке создания классов из XSD, я получил эту ошибку:JAXB Связывание Customization
java.lang.IllegalArgumentException: Illegal class inheritance loop. Outer class OrderPropertyList may not subclass from inner class: OrderPropertyList
Мой XSD определить элемент группировать неограниченную элемент вроде этого:
<element minOccurs="0" name="orderPropertyList">
<complexType>
<sequence>
<element maxOccurs="unbounded" name="orderProperty" type="tns:orderProperty" />
</sequence>
</complexType>
</element>
И мой настройки привязка следует, как указано на this page, но она не работает. Вот мой привязки:
<jaxb:bindings schemaLocation="../xsd/Schema.xsd" node="/xs:schema">
<jaxb:bindings node="//xs:element[@name='orderPropertyList']">
<jaxb:class name="OrderPropertyList"/>
</jaxb:bindings>
</jaxb:bindings>
Моя цель заключается в создании отдельного класса для orderPropertyList, а не по умолчанию поведения, что порождает внутренний класс внутри корневого элемента XSD.
Я наблюдал за кем-то с тем же намерением here и here, но он не работает должным образом для меня. :(
JAXB версия:
Specification-Version: 2.1
Implementation-Version: 2.1.8
Любая помощь
Это своего рода ужасная ситуация, как всегда генерировать классы без использования внутренних классов? О Боже! Если вы используете Weblogic 10 с jax-ws, вы не можете иметь внутренние классы внутри типов запросов/ответов. Грустный! – paulosuzart 2008-09-28 02:55:41