Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/394.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java jaxb转换解组查找xml中存在哪些对象_Java_Xml_Jaxb - Fatal编程技术网

Java jaxb转换解组查找xml中存在哪些对象

Java jaxb转换解组查找xml中存在哪些对象,java,xml,jaxb,Java,Xml,Jaxb,我有一个类似XML的 <Add> <A someAttr="value"> </ADD> <ADD> <F someAttr="value"> <ADD/> <CHANGE> <D someAttr="value"> </CHANGE> 在ADD和CHANGE类型中,从A到Z只有一个标记。当我使用JAXB解组时,我正确地得到了对象,但我不知道存在哪一个,除非我检查

我有一个类似XML的

<Add>
    <A someAttr="value">
</ADD>
<ADD>
    <F someAttr="value">
<ADD/>
<CHANGE>
    <D someAttr="value">
</CHANGE>

在ADD和CHANGE类型中,从A到Z只有一个标记。当我使用JAXB解组时,我正确地得到了对象,但我不知道存在哪一个,除非我检查所有26个是否为null。有没有一种有效的方法可以做到这一点?

您可以实现一个Unmarshaller.Listener并在Unmarshaller上设置。将为每个取消编组的对象调用此对象。您可以在此处添加所需的逻辑。

视情况而定。这些值是否有有用的默认值?如果标签不见了,你可以用它。谢谢布莱斯·道格汉。我会尝试使用listener。