Я пытаюсь преобразовать XML в мой Java классКак JAXB может объединить вложенные XML-элементы в строку?
@XmlAccessorType(XmlAccessType.FIELD)
@XmlRootElement(name = "Request")
public class Request {
@XmlElement(name="UserName")
private String username;
@XmlElement(name="Password")
private String password;
@XmlElement(name="XMLPost")
private String xmlPost;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getXmlPost() {
return xmlPost;
}
public void setXmlPost(String xmlPost) {
this.xmlPost = xmlPost;
}}
Вот мой контекст
JAXBContext jc = JAXVContext.newInstance(Request.class, Report.class, Status.class);
StringReader reader = new StringReader(xml);
Unmarshaller unmarshaller = jc.createUnmarshaller();
А вот как я использую их вместе
Request request = unmarshaller.unmarshal(reader);
В Request
классе xmlPost
будет содержать либо xml Report
, либо xml Status
Так что я хотел бы захватить его как чтобы я мог попытаться развязать каждый случай.
Класс Report
относится к третьей стороне, и у меня нет контроля. Однако, когда я пытаюсь развязать Request
, если есть какой-либо XML-файл в поле XMLPost
, он также пытается его размонтировать, хотя я указал, что он должен быть просто String
. Почему я не могу поместить xml в XMLPost
в String
?
Благодарим за помощь в продвижении.
Можете ли вы отправить сообщение об ошибке вы получаете? – Adam
@AdamRosini Я не получаю сообщение об ошибке, его просто в том, что в моем классе Request XMLPost является пустой строкой, тогда как я ожидаю, что строка внутри xml внутри нее – Dagron