JAXB: Prevent classes from being regenerated
I'm having troubles keeping classes from being regenerated. I'm
I have a sch开发者_Go百科ema A, which is imported in schema B. Schema B is then imported in Schema C.
In schema A, I have two simpleTypes, which are enumerations of strings:
<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>
Theses produces generated classes. In schema C, the classes corresponding to these enumerations keep being regenerated, and of course in the wrong place. I'm adding references to existing classes this way : (jaxb-creating-modules-for-reuse)
<jaxb:bindings node="//xs:simpleType[@name='blah_type']">
<jaxb:class ref="com.stuff.otherstuff.really.deep.BlahType"/>
</jaxb:bindings>
I have other types (complexTypes, and non enumeration simpleTypes) for which everything is fine.
Thanks for your help.
You can use episode files to do modular schema compilation:
- JAXB - Creating modules for reuse
- http://weblogs.java.net/blog/kohsuke/archive/2006/09/separate_compil.html?force=741
精彩评论