2010-12-12 7 views
1

リストをマップすると、@XmlElementWrapper注釈を使用して、いくつかのタグのすべての要素をラップすることができます。しかし、このCollectionが異なるクラスのインスタンスを保持し、異なるタグを使用したい場合は、どうすればよいですか?このコレクションに含まれる各クラスの注釈を追加しますか?どのような注釈?ありがとう。より詳細な例についてはタグラッピングについてのJaxbの簡単な質問

@XmlElements(value = { 
     @XmlElement(name="address", 
        type=Address.class), 
     @XmlElement(name="phone-number", 
        type=PhoneNumber.class), 
     @XmlElement(name="note", 
        type=String.class) 
}) 
private List<Object> contactInfo; 

参照:

答えて

1

これは、JAXBは、選択肢の構造を表し方法です@XmlElements探しているものかもしれ

+0

フム。とても興味深い。そのようなものがあれば、なぜ相続のための簡単な方法がないのですか? –

+0

チェックアウト:http://bdoughan.blogspot.com/2010/11/jaxb-and-inheritance-using-substitution.htmlおよびhttp://bdoughan.blogspot.com/2010/11/jaxb-and-inheritance-using JAXBと継承の説明は-xsitype.htmlを参照してください。 –

+0

Damn。情報を検索すると、2番目の記事をスキップできますか?私はいくつかの非常に醜い方法で継承をマップしました。しかし、その後、私はそのものを書き直すでしょう。どうもありがとう。 –