Ich habe solche XML und ich möchte es in Java-Objekt analysieren.Parsing XML mit mehr Unterelementen mit JAXB
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<CreatePreOrderResponse>
<Errors>
<Error>
<Code>code 1</Code>
<Message>message 1</Message>
<ErrorElement>element 1</ErrorElement>
</Error>
<Error>
<Code>code 2</Code>
<Message>message 2</Message>
<ErrorElement>element 2</ErrorElement>
</Error>
</Errors>
</CreatePreOrderResponse>
I arbeiten mit JAXB
XML Zeichenfolge zu analysieren, die keine „Unterelemente“ hat, hat nur ein Element mit ihren Werten auf der Ebene der errors
.
Frage: Ich würde gerne wissen, wie alle Error
Elemente in Errors
Elemente zu erhalten, z.B. in Liste in CreatePreOrderResponse
Objekt? Ist es möglich es automatisch mit JAXB
unmarshaller zu analysieren ro muss ich XML durchlaufen und es manuell analysieren?
HINWEIS: nur für Informationen, das funktioniert für mich - diese Klassen I für das Parsen von XML diese verwenden (ohne Unterelemente).
<CreatePreOrderResponse>
<PreOrder>
<ID>123456789</ID>
</PreOrder>
</CreatePreOrderResponse>
BtnPreorderResponse
@XmlRootElement(name = "CreatePreOrderResponse")
@XmlAccessorType(XmlAccessType.FIELD)
@XmlSeeAlso(BtnDocLine.class)
public class BtnPreorderResponse {
@XmlElement(name = "PreOrder")
private BtnPreorder btnPreorder;
@XmlElement(name = "Errors")
private BtnErrorListType btnErrorListType;
public BtnPreorder getBtnPreorder() {
return btnPreorder;
}
public void setBtnPreorder(BtnPreorder btnPreorder) {
this.btnPreorder = btnPreorder;
}
public BtnErrorListType getBtnErrorListType() {
return btnErrorListType;
}
public void setBtnErrorListType(BtnErrorListType btnErrorListType) {
this.btnErrorListType = btnErrorListType;
}
@Override
public String toString() {
return "BtnPreorderResponse{" +
"btnPreorder=" + btnPreorder +
", btnErrorListType=" + btnErrorListType +
'}';
}
}
BtnPreorder
@XmlRootElement(name = "PreOrder")
@XmlAccessorType(XmlAccessType.FIELD)
public class BtnPreorder {
@XmlElement(name = "ID")
private long id;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
@Override
public String toString() {
return "BtnPreorder{" +
"id=" + id +
'}';
}
}
Sie scheinen nicht die wichtigste Klasse zu enthalten, BtnErrorListType –