我正在使用Simple XML框架,只是重命名了一些XML布局,现在它们似乎不再适用了。
这是我的XML:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<orderListReply id="R000000000006">
<order orderid="12" type="outbound" state="available">
<todo>2</todo>
<done>0</done>
<lines>1</lines>
<erporderid>0</erporderid>
</order>
</orderListReply>
这是我的代码类定义:
@Root(name="orderListReply")
public class OrderListReplyTelegram extends Telegram {
@ElementList(name="order", inline=true, required=false)
private List<OrderListItem> orders;
...
这是我得到的错误:
org.simpleframework.xml.core.ElementException:元素&#39; order&#39;在第1行的nl.minerall.sapphire.pocket.telegrams.OrderListReplyTelegram类中没有匹配项
答案 0 :(得分:5)
不幸的是,调试Simple XML Framework并不容易,但是一些反复试验帮助了我。
我的OrderListItem
课程有这个标题:
@Element(name="order")
public class OrderListItem {
更改为:
@Root(name="order")
public class OrderListItem {
它奏效了。奇怪的是,在其他代码中,@Element
注释似乎有效(此代码来自另一个,工作,树)。