获取错误找不到Java类java.util.ArrayList / List 的消息正文编写器

这已经在这里发布了很多时间,但没有解决方案对我有用…
我可以通过创建一个包装类来避免这个错误,但它只返回

我究竟做错了什么 ?

StringWrapper类:

 import java.util.ArrayList; import java.util.List; import javax.xml.bind.annotation.XmlRootElement; @XmlRootElement public class StringWrapper { public StringWrapper (){} List list=new ArrayList(); public void add(String s){ list.add(s); } } 

代码:

  @Path("/xml") @GET @Produces({MediaType.APPLICATION_XML,MediaType.APPLICATION_JSON}) public StringWrapper mystring(){ StringWrapper thestring=new StringWrapper(); thestring.add("a"); thestring.add("a"); return thestring; } 

使用Jersey的Java Rest webservice。

您应该在StringWrapper中添加至少一个getter。 没有公共属性,没有任何序列化。 所以输出是正确的。 如果您不想在字符串列表周围添加标记,则可以使用@XmlValue标记单个getter。

 @XmlRootElement public class StringWrapper { public StringWrapper (){} List list=new ArrayList(); public void add(String s) { list.add(s); } @XmlValue public List getData() { return list; } }