Я пытаюсь отобразить этот xml в мой модальный класс, используя JAXB.Я искал много решений.Но как-то для этого ничего не работает.Каждый раз при сопоставлении этого xml с моим классом модели я получаю
1 отсчетов IllegalAnnotationExceptions
<body>
<i>
<f name="name">test name</f>
<f name="address">test address</f>
<f name="phone">test phone</f>
</i>
</body>
Это мой класс модели
@XmlRootElement(name = "body")
public class body {
// XmLElementWrapper generates a wrapper element around XML representation
@XmlElementWrapper(name = "i")
// XmlElement sets the name of the entities
@XmlElement(name = "f")
private ArrayList<f> f;
public ArrayList<f> getF() {
return f;
}
public void setF(ArrayList<f> f) {
this.f = f;
}
@XmlRootElement(name = "f")
public static class f {
String name;
public String getName() {
return name;
}
@XmlAttribute(name = "name")
public void setName(String name) {
this.name = name;
}
}
}
Вот как я просто получаю доступ:
InputSource inputSource = new InputSource(new StringReader(inputXml));
// map xml to model class in jaxb
JAXBContext jaxbContext = JAXBContext.newInstance(Modal.class);
Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
Modal modal = (Modal) jaxbUnmarshaller.unmarshal(inputSource);
Что мне не хватает?И еще, есть ли способ получить доступ к значению узла "f"?Спасибо.