JAXB: предотвратите восстановление классов
У меня проблемы с удержанием классов от перерождения. я
У меня есть схема A, которая импортируется в схему B. Схема B затем импортируется в схему C.
В схеме A у меня есть два простых типа, которые являются перечислениями строк:
<xs:simpleType name="blah_type">
<xs:restriction base="xs:string">
<xs:enumeration value="blah_1"/>
<xs:enumeration value="blah_2"/>
<xs:enumeration value="blah_3"/>
<xs:enumeration value="blah_4"/>
<xs:enumeration value="blah_5"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="another_blah_type">
<xs:restriction base="xs:string">
<xs:enumeration value="another_blah_1"/>
<xs:enumeration value="another_blah_2"/>
<xs:enumeration value="another_blah_3"/>
<xs:enumeration value="another_blah_4"/>
<xs:enumeration value="another_blah_5"/>
</xs:restriction>
</xs:simpleType>
Тезисы создают сгенерированные классы. В схеме C классы, соответствующие этим перечислениям, продолжают обновляться и, конечно, в неправильном месте. Я добавляю ссылки на существующие классы следующим образом: ( /questions/1380842/jaxb-sozdanie-modulej-dlya-povtornogo-ispolzovaniya)
<jaxb:bindings node="//xs:simpleType[@name='blah_type']">
<jaxb:class ref="com.stuff.otherstuff.really.deep.BlahType"/>
</jaxb:bindings>
У меня есть другие типы (complexTypes и не перечисление simpleTypes), для которых все в порядке.
Спасибо за вашу помощь.
1 ответ
Решение
Вы можете использовать файлы эпизодов для составления модульной схемы: