java无法解组JAXBElement结构。结果为空
我有xml结构,比如
<SyncContact>
<Contact>
<Addresses>
<Entry>
<AddressType>
<Code>reg</Code>
</AddressType>
</Entry>
<Addresses>
<Contact>
</SyncContact>
还有一类是:
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "SyncContact", propOrder = {
"Contact",
})
@XmlRootElement(name = "synContact ")
public class SynContact {
@XmlElementRef(name = "Contact", type = JAXBElement.class, required = false)
protected JAXBElement<Contact> abContact;
public JAXBElement<Contact> getContact() {
return abContact;
}
public void setContact(JAXBElement<Contact> value) {
this.Contact = value;
}
}
以及上述类别中使用的其他类别:
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Contact", propOrder = {
"Addresses",}
public class ABContact {
@XmlElementRef(name = "Addresses", type = JAXBElement.class, required = false)
protected JAXBElement<Contact.Addresses> Addresses;
public JAXBElement<Contact.Addresses> getAllAddresses() {
return Addresses;
}
public void setAllAddresses(JAXBElement<Contact.Addresses> value) {
this.Addresses = value;
}
}
以及上述中使用的其他类别:
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
"entry"
})
public static class Addresses {
public List<ABContact.Addresses.Entry> getEntry() {
if (entry == null) {
entry = new ArrayList<Contact.Addresses.Entry>();
}
return this.entry;
}
}
以及我解组的代码:
private static SyncContact createContact(String contactRequestESB) {
SyncContact contactSyncObj = null;
JAXBContext jaxbContext = null;
SyncContact contactSynchronisation = null;
File file = new File(contactRequestESB);
try {
JAXBContext jc = JAXBContext.newInstance(ObjectFactory.class);
Unmarshaller u = jc.createUnmarshaller();
File f = new File (contactRequestESB);
jaxbContext = JAXBContext.newInstance(SyncContact.class);
Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
JAXBElement<SyncContact> root = (JAXBElement<SyncContact>)jaxbUnmarshaller.unmarshal(file);
contactSyncObj = root.getValue();
} catch (Exception e) {
e.printStackTrace();
}
return contactSyncObj;
}
但当我调试解组时,我发现我的条目并没有被解组。我不明白为什么它不能这样做。我有SyncContact在里面我有Contact在Contact中我有地址但没有xml中的条目值(reg)。 请帮忙
共 (0) 个答案