2010-02-03 58 views
1

我使用JAXB從XSD創建一些類。結果不是我期望的 ,而且很可能可以自定義。JAXB定製和列表<Object>

它創建了一個通用列表,而不是3個不同的列表。這可以以某種方式糾正嗎?

@XmlElements({ 
    @XmlElement(name = "M1", type = M1_Type.class), 
    @XmlElement(name = "M2", type = M2_Type.class), 
    @XmlElement(name = "M3", type = M3_Type.class) 
}) 

protected List<Object> m1Orm2OrM3; 

是否有定製解決此問題?

+1

你在期待什麼?你覺得它怎麼樣? – skaffman 2010-02-03 13:29:46

+0

男人,我會期待3個不同的列表: 受保護的列表 m1; 保護清單 m2;等等 謝謝! – DaTroop 2010-02-03 13:50:22

+0

@XmlElement(name =「M1」,type = M1_Type.class) List m1; @XmlElement(name =「M2」,type = M2_Type.class) List m2; @XmlElement(name =「M3」,type = M3_Type.class) List m3; – DaTroop 2010-02-03 14:51:10

回答

0

你可能有一個可重複的選擇,像

<choice maxOccurs="unbounded"> 
    <element name="M1" .../> 
    <element name="M2" .../> 
    <element name="M3" .../> 
</choice> 

答案是否定的,有沒有這樣的定製。 「三個清單」實際上是一個非常不同的數據結構。