解组JAVA Web服务中的嵌套或复杂数据元素
我们正在开发JAVA Web服务,并提出了对Web服务的输入。 输入有数据元素,最后一个元素是Arraylist,它有四个项目。 我们能够获得不在arraylist中的第一组元素的值,然后将它们保存或存储在数据库中。 我们面临的挑战是在arraylist中获取嵌套元素的值。
我们使用以下代码,但它抱怨或给出错误消息,它无法看到(DataInfo.xml)XML文件。 我们认为这是由Web服务输入生成的,但我们无法看到它。
JAXBContext jaxbContext = JAXBContext.newInstance(DataInfo.class); Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller(); DataInfo EXitems = (DataInfo) jaxbUnmarshaller.unmarshal(new File("DataInfo.xml") );
我们如何确保代码(应用程序)看到XML或从arraylist或嵌套元素获取值的最佳方法是什么?
我们正在使用相同的代码
主要课程
@XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "DataInfo", propOrder = {"firstName","surname", "dateofBirth","studentAddress"}) @XmlRootElement(name = "dataInfo") public class DataInfo implements Serializable { }
ArrayList类
@XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "studentAddress", propOrder = {"address1","address2", "town","country"}) @XmlRootElement(name = "studentAddress") public class studentAddress implements Serializable { }
我已经删除了getter和setter,以便在发布时缩短代码
请帮忙
这样的事对我有用,
@XmlElementWrapper(name = "ProfileList") @XmlElement(name = "Profile") private List listOfProfiles;
对于XML结构,
.... ...... ...... ....