gpt4 book ai didi

android - 使用 Simple-XML-Framework 时出现 ValueRequired 异常

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:16:10 27 4
gpt4 key购买 nike

我正在尝试使用 Simple-XML-framework。但是我得到了 ValueRequiredException

org.simpleframework.xml.core.ValueRequiredException: Unable to satisfy @org.simpleframework.xml.ElementList(data=false, empty=true, entry=, inline=false, name=, required=true, type=void) on field 'Employees' public java.util.List com.example.xmlparsing.Company.Employees for class com.example.xmlparsing.Company at line 2

我的 XML 文件包含以下内容:

<?xml version="1.0" encoding="utf-8"?>
<Company>
<Emp>
<Name>Venkat</Name>
<ID>661511</ID>
</Emp>
<Emp>
<Name>Shiv</Name>
<ID>661311</ID>
</Emp>
</Company>

我的注解类如下:

公司.java :

package com.example.xmlparsing;

import java.util.List;

import org.simpleframework.xml.ElementList;
import org.simpleframework.xml.Root;

@Root
public class Company {

@ElementList
public List<Emp> Employees;

}

Emp.java :

package com.example.xmlparsing;

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

@Element(name="Emp")
public class Emp {

@Element
public String Name;

@Element
public String ID;


}

可能是什么问题?如何解决?

最佳答案

您的代码中有两处错误:

首先,您需要在 Emp 类中使用 @Root() 而不是 @Element:

@Root(name="Emp")
public class Emp {

@Element
public String Name;

@Element
public String ID;


}

其次,如果您以这种方式使用列表:

@Root
public class Company {

@ElementList
public List<Emp> Employees;

}

它被包裹在另一个 xml 标签中。
您可以更改您的 xml 或简单地使用 @ElementList(inline = true)

关于android - 使用 Simple-XML-Framework 时出现 ValueRequired 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15703143/

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