可能性の重複スキーマ要素をマッピングする方法:私はXMLスキーマからJavaクラスを生成するために、JAX-Bを使用しています
jaxb xjc mapping to existing domain objectsJAX-B - 既存のJavaクラスに
を。
私のスキーマには、プロジェクトに存在するJavaクラスにバインドしたい要素が1つあります。私のバインディングは.xjbファイルで行われます。私はいくつかのアプローチを試みましたが、動作するものは何も得られません。
これは可能ですか? そうなら、どうですか?ここで
は私の問題の少ない例である:
私の既存のJavaクラス:
package com.existing;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
@XmlAccessorType(XmlAccessType.FIELD)
public class Existing {
private String prop;
public String getProp() { return prop; }
public void setProp(String prop) { this.prop = prop; }
}
マイスキーマ:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.baloiselife.com/xpression/policy"
xmlns="http://www.baloiselife.com/xpression/policy" >
<xs:element name="root_node">
<xs:complexType>
<xs:sequence>
<xs:element name="some_other_propery" type="xs:string"/>
<!-- I want this element to map onto my existing Java class -->
<xs:element name="special_element" type="existing_type" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- I want this element to be ignored, and instead my Java class used -->
<xs:complexType name="existing_type">
<xs:sequence>
<xs:element name="prop" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
だから私のバインディングを何任意のアイデアをすべきですか? jxb:class設定を使ってみましたが、動作させることができませんでした。 私の最終的な結果は、二つの要件があります。ExistingTypeクラスは、スキーマのルートノードクラスは私の既存のJavaクラスにマップ既存の型の要素を持ってい
- あるを
おかげブレーズ。 ref属性が2.1のjxbスキーマで追加され、私のIDEが古いものを使用していたようです...だから私はそのオプションを見ませんでした!すべてが今素晴らしいです。 –