我在我的RESTEasy項目中使用EclipseLink的MOXy作爲JAXB實現.MOXy的高級功能已經通過@XmlDiscriminatorNode &這樣的註釋帶來了很多幫助。除了一件事情之外,一切工作都很好:JSON支持。我使用RESTEasy的JettisonMappedContext,但不幸的是,在編組後,只有實例變量字段屬於我的JSON中的抽象超類。MOXy JSON支持
@XmlRootElement
@XmlDiscriminatorNode("@type")
public abstract class Entity {
public Entity(){}
public Entity(String id){
this.id = id;
}
private String id;
@XmlElement
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}
子類:
編組後<object type="photo">
<id>photoId423423</id>
<thumbnail>http://dsadasadas.dsadas</thumbnail>
</object>
JSON:
"object":{"id":"photoId423423"}
是否有任何其他的方式來實現這一目標編組後
@XmlRootElement
@XmlDiscriminatorValue("photo")
public class Photo extends Entity{
private String thumbnail;
public Photo(){}
public Photo(String id) {
super(id);
}
public void setThumbnail(String thumbnail) {
this.thumbnail = thumbnail;
}
@XmlElement(name="thumbnail")
public String getThumbnail() {
return thumbnail;
}
}
XML?
謝謝。
非常感謝詳細answer.You又一次救了我:) – barand 2011-04-06 08:51:53