gpt4 book ai didi

java - 简单的 : Element declared twice

转载 作者:数据小太阳 更新时间:2023-10-29 02:27:19 25 4
gpt4 key购买 nike

我尝试使用 SimpleXML 库解析 xml,但出现以下异常;当我将我的水域定义为列表时,无法弄清楚为什么它会提示。可能是我忽略的一些非常基本的东西,但我就是找不到。我几乎遵循 http://simple.sourceforge.net/download/stream/doc/tutorial/tutorial.php#list 上给出的示例模式

顺便说一句:StackOverflow 上有一个 similar question,但它是不同的情况,实际上并没有处理 ElementLists。在我的例子中,我绝对想要一个 ElementList,因此我会假设,我的元素的多重存在实际上应该没问题。

错误日志:

Error parsing xml.
org.simpleframework.xml.core.PersistenceException: Element 'gewaessereintrag' declared twice at line 9
at org.simpleframework.xml.core.Variable$Adapter.read(Variable.java:456)
....

XML:

<?xml version="1.0" ?>
<gewaesser>
<returncode>0</returncode>
<gewaessereintrag>
<id>1</id>
<name><![CDATA[Entry1]]></name>
<info><![CDATA[Info1.]]></info>
</gewaessereintrag>
<gewaessereintrag>
<id>2</id>
<name><![CDATA[Entry2]]></name>
<info><![CDATA[Info2.]]></info>
</gewaessereintrag>
</gewaesser>

WaterList(处理 <gewaesser> ):

@Root(name = "gewaesser")
public class WaterList {

@ElementList(type = Water.class, name = "gewaessereintrag")
private List<Water> waters;

@Element(name = "returncode")
private String returncode;

public List<Water> getWaters() {
return waters;
}
}

水(处理 <gewaessereintrag> ):

@Root(name = "gewaessereintrag")
public class Water {

@Element(required = false, name = "name")
private String name;

@Element(required = false, name = "info")
private String info;

@Element(required = false, name = "id", type = Long.class)
private Long id;

}

最佳答案

我自己找到了答案,但也许这对其他人有帮助:

我忘了声明“inline = true

@ElementList(type = Water.class, name = "gewaessereintrag", inline = true)

关于java - 简单的 : Element declared twice,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10616903/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com