简单的XML - 两个不同的根元素

时间:2017-08-29 16:29:37

标签: java simple-framework

我的问题是我必须解析一个可以有两个不同的根xml标签的xml文档。

变式1:

<?xml version="1.0" encoding="UTF-8"?>
<success>
success...
</success>

变式2:

<?xml version="1.0" encoding="UTF-8"?>
<error>
error...
</error>

我知道有注释@ElementUnion(),但据我所知它只适用于非根标签。

更多信息:

我正在使用改造并使用api并使用simple-xml来解析xml文档。

如果有人有解决方案或解决方法,那就太好了。

我唯一的想法是调用api,捕获异常,然后使用变体2的其他模型重试。

提前致谢

1 个答案:

答案 0 :(得分:3)

您可以使用Persister.validate。它采用与Persister.read相同的参数,如果可以解析传递的类,则返回简单的true或false。

这是使用API​​的最佳方式,您也可以通过读取xml的前两行手动检测类(在您的示例中),但在更复杂的结构中,您需要使用&#39; validate&# 39;