尝试使用简单的框架工作解析没有父节点的xml列表

时间:2012-06-18 11:33:44

标签: java xml web-services

我使用Simple Framework来解析xml文件。我可以解析我需要的一切,除了没有父节点的列表。 “category.xml”下面的代码片段显示了xml格式和无父类别列表。我还包含了Category类和我的Root类ArrayOfTypeCategory的代码。我有一种有趣的感觉,解决方案很容易,但我不能,但我的手指。它有什么事可做吗(inline=true)?任何帮助将不胜感激。

--- --- category.xml

<?xml version="1.0" encoding="utf-8"?>
<ArrayOfCategory xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://ACCUMobileWS.org/">
  <Category>
    <CategoryId>99</CategoryId>
    <Name>Frank</Name>
    <Description>Prison Break</Description>
  </Category>
  <Category>
    <CategoryId>101</CategoryId>
    <Name>Jim</Name>
    <Description>Breakig Bad</Description>
  </Category>
</ArrayOfCategory>

---类别类---

package com.SimpleFramwork;

import org.simpleframework.xml.Element;
import org.simpleframework.xml.Text;

@Element
public class Category {

@Text
public String CategoryId;

@Text
public String Name;

@Text
public String Description;

}

--- ArrayOfTypeCategory类----

package com.SimpleFramwork;

//imports

import java.util.List;
import org.simpleframework.xml.ElementList;
import org.simpleframework.xml.Root;

@Root
public class ArrayOfCategory {

@ElementList(inline = true)
private List<Category> list;

public List getCategories() {
    return list;
}
}

当我运行项目'

时,我在log cat中收到此错误
org.simpleframework.xml.core.ValueRequiredException: Unable to satisfy @org.simpleframework.xml.ElementList(data=false, empty=true, entry=, inline=true, name=, required=true, type=void) on field 'list' private java.util.List com.SimpleFramwork.ArrayOfCategory.list for class com.SimpleFramwork.ArrayOfCategory at line 2'

1 个答案:

答案 0 :(得分:1)

你必须使内部值为元素。

@Element
public class Category {

    @Element
    public String CategoryId;

    @Element
    public String Name;

    @Element
    public String Description;    
}