私はxmlアノテートpojosの束を生成しようとしています。これを行うには、私のすべてのxsdファイルが自分のプロジェクトのリソースフォルダにあります(それらはpolycom rmx sdk、RmxSdkApiV7_8-EMA_EMA-V7_8_0_303からのものです)。私は右クリックして各自(150人以上)JAXBクラスを生成してクリックしてください。私はプロジェクトを選択し、ウィザードを終了するよりも名前空間を与えます。これを実行した後、新しく生成されたクラスは既存のクラスを上書きするという警告があります。これは私の問題です。いくつかの一般的に使用されるオブジェクトは、異なるxsdファイルで異なる定義を持つためです。オーバーライドが発生すると、定義されているものはすべて失われます。ノンオーバーライドjaxb生成
したがって、たとえば、response_trans_conf.xsdは
trans_conf_2.xsdのような別のスキーマファイルが<xsd:element name="GET">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="ID"/>
<xsd:element ref="OBJ_TOKEN"/>
<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
としてGET定義するように、私が取得対象になってしまいます
<xsd:element name="GET">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="CONFERENCE" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
としてGET定義それは、(それぞれ)
public class GET {
@XmlElement(name = "CONFERENCE")
protected ConferenceContent conference;
ORのように見えます
public class GET {
@XmlElement(name = "ID", required = true)
protected BigInteger id;
@XmlElement(name = "OBJ_TOKEN", required = true)
protected String objtoken;
@XmlAnyElement
protected List<Element> any;
私が必要とするのは、両方を組み合わせたオブジェクトです。私が言ったように、このsdkには150以上のxsdファイルがあります。したがって、この問題には他のいくつかの共通のオブジェクトが乗算されます。
FYIは同時にオーバーライドされたクラスではなく、結合されたクラスを欲しがっています。
最終的な出力がすべての要素の組み合わせ(重複を避ける)であるならば、xsdを変更して 'xsd complextype extension' [link](http://www.w3schools。 com/xml/el_extension.asp) – ulab