Ho usato JAXB per analizzare un XML.Come ottenere un particolare elemento (ad es. Un nodo figlio) tramite l'analisi xml JAXB senza analizzare quell'elemento come nodo.Come ottenere un elemento particolare tramite l'analisi xml di JAXB?
<?xml version="1.0" encoding="UTF-8"?>
<Header>
<From>
<Credential
domain="NetworkId"><Identity>ANXXXNNN</Identity>
</Credential>
</From>
<To>
<Credential
domain="NetworkId"><Identity>ANNNXXXXXT</Identity>
</Credential>
</To>
<To>
<Credential
domain="NetworkId"><Identity>BNNXXXT</Identity>
</Credential>
</To>
</Header>
ho fatto unmarshalling come questo, funziona prestazioni fine.For, non voglio elementi come node.Is ci anyother modo per farlo?
Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
dbf.setNamespaceAware(true);
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc;
doc = db.parse(file);
NodeList node = (NodeList)doc.getElementsByTagName("TO");
JAXBElement<ToType> element = jaxbUnmarshaller.unmarshal(node.item(0),ToType.class);
modello oggetto è come
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "ToType", propOrder = {
"credential"
})
public class ToType {
@XmlElement(name = "Credential", required = true)
protected CredentialType credential;
public CredentialType getCredential() {
return credential;
}
public void setCredential(CredentialType value) {
this.credential = value;
}
}
non si utilizza jaxbMarshaller ovunque nel snippet di codice. –
Mi sto prendendo in giro mentre smantellamento solo – thilo
Sì, c'è un altro modo di fare senza usare il nodo? – thilo