2013-05-13 72 views
2

我有一个父类ClassA,我无法修改。它有一个字段“field1”,它没有XmlElement注解。Jaxb - 覆盖XMLElement名称属性


@XmlRootElement 
public class ClassA { 
    protected String field1; 
} 

另外,我有一个类ClassB扩展ClassA。我收到的xml中,有一个名为“newField1”的字段“field1”。

我该如何去向Jaxb表明,xml中的标记“newField1”实际上对应于基类中的“field1”。

感谢

回答

1

确定。找到答案。 所有需要做的是在派生类中如


    @XmlElement(name = "newField1") 
    public void setField1(String field1) { 
     this.field1 = field1; 
    } 

OFC创建setter方法,这种假定您正在访问现场保护了基类的访问。否则你可能需要弄脏一点点并做一些反思;)