空列表解组Java对象
我试图使用JAXB解组器将XML文档生成到Java对象中。在XML文档中,如果有元素要呈现给类列表的类Java对象,但生成的对象列表为空,尽管it元素中有内容 XML文档中的元素是否因为没有Java上的类表示那么完整而导致JAXB无法将XML文档解析为类表示空列表解组Java对象,java,xml,collections,jaxb,unmarshalling,Java,Xml,Collections,Jaxb,Unmarshalling,我试图使用JAXB解组器将XML文档生成到Java对象中。在XML文档中,如果有元素要呈现给类列表的类Java对象,但生成的对象列表为空,尽管it元素中有内容 XML文档中的元素是否因为没有Java上的类表示那么完整而导致JAXB无法将XML文档解析为类表示 是否有人可以帮助我,为什么会发生这种情况,解决方案是什么?如果不知道对象模型或XML文档,很难说出解组操作无法正常工作的原因。下面我有一个包装和未包装集合的示例,可以帮助您找出用例中可能存在的错误: input.xml/Output <
是否有人可以帮助我,为什么会发生这种情况,解决方案是什么?如果不知道对象模型或XML文档,很难说出解组操作无法正常工作的原因。下面我有一个包装和未包装集合的示例,可以帮助您找出用例中可能存在的错误: input.xml/Output
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<root>
<item>A</item>
<item>B</item>
<item>C</item>
<items>
<item>D</item>
<item>E</item>
<item>F</item>
</items>
</root>
演示
package forum11219454;
import java.io.File;
import javax.xml.bind.*;
public class Demo {
public static void main(String[] args) throws Exception {
JAXBContext jc = JAXBContext.newInstance(Root.class);
Unmarshaller unmarshaller = jc.createUnmarshaller();
File xml = new File("src/forum11219454/input.xml");
Root root = (Root) unmarshaller.unmarshal(xml);
Marshaller marshaller = jc.createMarshaller();
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
marshaller.marshal(root, System.out);
}
}
了解更多信息
- 在不了解对象模型或XML文档的情况下,很难说出解组操作无法正常工作的原因。下面我有一个包装和未包装集合的示例,可以帮助您找出用例中可能存在的错误:
input.xml/Output
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<root>
<item>A</item>
<item>B</item>
<item>C</item>
<items>
<item>D</item>
<item>E</item>
<item>F</item>
</items>
</root>
演示
package forum11219454;
import java.io.File;
import javax.xml.bind.*;
public class Demo {
public static void main(String[] args) throws Exception {
JAXBContext jc = JAXBContext.newInstance(Root.class);
Unmarshaller unmarshaller = jc.createUnmarshaller();
File xml = new File("src/forum11219454/input.xml");
Root root = (Root) unmarshaller.unmarshal(xml);
Marshaller marshaller = jc.createMarshaller();
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
marshaller.marshal(root, System.out);
}
}
了解更多信息