xmlsee在Simplexml中也相同

时间:2013-03-24 14:13:50

标签: jaxb simplexml

simplexml @xmlseealso jaxb的等价物是什么。 Iam解析的响应如下所示:

<things xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:type="thing">
    <val>185</val>
</things>
<things xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:type="thing">
    <val>162</val>
</things>

我正在寻找像这样的响应映射

Response.java

@ElementList
List<Object> things;

Thing.java

@Element
int val;

我如何动态地将'事物'映射到'事物'列表,就像我在jaxb中使用xmlseealso一样。 Simplexml中有没有办法?

1 个答案:

答案 0 :(得分:0)

如果您的意思是匹配不同类的元素列表但是使用共享超类,则解决方案是@ElementListUnion注释。您的

@XmlSeeAlso({X.class, Y.class, Z.class})

应表示为:

@ElementListUnion({
   @ElementList(entry="x", inline=true, type=X.class),
   @ElementList(entry="y", inline=true, type=Y.class),
   @ElementList(entry="z", inline=true, type=Z.class)               
})
private List<Superclass> xyz;

请参阅http://simple.sourceforge.net/download/stream/doc/javadoc/org/simpleframework/xml/ElementListUnion.html