5

我有一个类似于以下的模式......

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="t1" type="t1Type"/>
    <xs:element name="t2" type="t2Type"/>
    <xs:element name="t3" type="t3Type"/>
</xs:schema>

起初我认为这是一个无效的模式,但我在网上做的所有检查都验证了它。这意味着提供 XML 的人可以发送任何(或所有)列出的类型,并且仍然符合模式。

如何使用 JAXB 映射和解组所有不同的可能性?

我不知道我会收到哪一个。

4

1 回答 1

4

您将需要利用带有@XmlRegistry(通常称为ObjectFactory)注释的工厂类。该类将为create每个可能的根元素都包含一个方法,并用@XmlElementDecl. 有关更多详细信息和示例,请参阅我写的这篇文章。

于 2012-10-16T13:59:41.730 回答