Wenn Sie das Moxy verwenden, um das Beispiel xml zum Kind unterzuordnen, kann es den Namen immer nicht erhalten. Es ist immer null.Moxy kann das Unterklassenfeld, das die Oberklasse übersteuert, nicht überschreiben
XML-Beispiel
<?xml version="1.0" encoding="UTF-8"?>
<child>
<name value="test"/>
</child>
Sample-Klasse
public class Parent {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
@XmlRootElement
public class Child extends Parent {
@Override
@XmlPath("name/@value")
public String getName() {
return super.getName() == null ? "" : super.getName();
}
@Override
public void setName(String name) {
super.setName(name);
}
}
JAXBContext jc2 = JAXBContext.newInstance(Child.class);
Unmarshaller unmarshaller = jc2.createUnmarshaller();
Child child = (Child) unmarshaller.unmarshal(new File("d:\\sample.xml"));
Wie kann ich diesen Wert zu erhalten, wenn ich keine Änderung auf der übergeordneten Klasse machen.
Danke,