Есть ли аннотация JAXB для игнорирования родительского класса, когда у вас есть @XmlElement в списке дочерних классов?
Просто чтобы уточнить - мне было интересно, есть ли лучший способ, чем отмечать всеиз родительских классов getters / setters как переходные, а затем необходимо вернуться к дочерним классам и добавить getters / setters и также пометить их как XmlElements
Пример:
public class GenericHelper {
String name="";
String dates="";
String roleName="";
String loe="";
@XmlTransient
public String getName() {return name;}
public void setName(String name) {this.name = name;}
@XmlTransient
public String getDates() {return dates;}
public void setDates(String dates) {this.dates = dates;}
@XmlTransient
public String getRoleName() {return roleName;}
public void setRoleName(String roleName) {this.roleName = roleName;}
@XmlTransient
public String getLOE() {return loe;}
public void setLOE(String loe) {
this.loe = loe.replace("%", "").trim();
}
}
и
public class SpecificHelper extends GenericHelper {
List<ProjectHelper> projects;
public SpecificHelper (){
projects=new ArrayList<ProjectHelper>();
}
@XmlElement(name = "project")
@XmlElementWrapper (name = "projectlist")
public List<ProjectHelper> getProjects() {return projects;}
public void setProjects(List<ProjectHelper> projects) {this.projects = projects;}
@XmlElement
public String getName(){
return super.getName();
}
@Override
public String toString(){
String ret="SpecificHelper [";
ret+="name:"+name+";";
ret+="dates:"+dates+";";
ret+="roleName:"+roleName+";";
ret+="loe:"+loe+";";
ret+="\n\tprojects:"+projects+";";
return ret+"]";
}
}
Так что в этом примере, если я уберу аннотации XmlTransient в GenericHelper, любой класс, который его расширяет, если бы у меня был метод getSpecificHelper (), который возвращал список всех работодателей, ианнотируйте его с помощью XmlElement, все эти элементы будут возвращаться с именем, LOE, RoleName и т. д. Я ищу аннотацию класса для GenericHelper, поэтому я могу избежать необходимости использовать все @XmlTransients по отдельности и использовать толькоНотации XmlElement, которые я поместил в SpecificHelper