2011-09-27 80 views
2

我想在父类中使用JAXB注释,以便所有的子类都可以继承它们,但我遇到了一个编组错误。当我在子类包括@XmlRootElement和@XmlAccessorType(XmlAccessType.FIELD)我没有得到下面的错误JAXB注解和SuperClass

错误: HTTP状态500 - 找不到MessageBodyWriter类型的响应对象:java.util中。媒体类型ArrayList:application/xml

@MappedSuperclass 
@XmlRootElement 
@XmlAccessorType(XmlAccessType.FIELD) 
public class Parent { 

//class contents here 
} 

public class Child extends Parent{ 

//class contents here 
} 
+0

用'@ GET'注解的JAX-RS方法返回ArrayList 'ArrayList '或ArrayList? –

回答

7

你必须在你的父类的@XmlSeeAlso注释中列出你所有的子类。

1

默认情况下,注释未被继承;它是可继承的吗?

+0

你如何标注注释是可继承的? – c12

+1

通过元注释@Inherited。这是注释本身的注释。 –

+0

感谢戴夫......由于某些原因,我无法找到有关使用@Inherited的大量文档。我不知道如何将它应用到超级类(放在哪里).. – c12