获取Java类Java.util.ArrayList/List的消息体编写器时出错<;java.lang.String>;找不到
这已经在这里发布了很多次了,但是没有一个解决方案对我有效…获取Java类Java.util.ArrayList/List的消息体编写器时出错<;java.lang.String>;找不到,java,web-services,rest,jersey,Java,Web Services,Rest,Jersey,这已经在这里发布了很多次了,但是没有一个解决方案对我有效… 我可以通过创建一个包装类来避免这个错误,但它只返回 我做错了什么 StringWrapper类: import java.util.ArrayList; import java.util.List; import javax.xml.bind.annotation.XmlRootElement; @XmlRootElement public class StringWrapper { public StringWrapper
我可以通过创建一个包装类来避免这个错误,但它只返回
我做错了什么
StringWrapper类:
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement
public class StringWrapper {
public StringWrapper (){}
List<String> list=new ArrayList<String>();
public void add(String s){
list.add(s);
}
}
使用Jersey的Java Rest Web服务。您应该在StringWrapper中至少添加一个getter。没有公共属性,就没有可序列化的内容。因此,输出是正确的。如果您不希望字符串列表周围有标记,可以使用@XmlValue标记单个getter
@XmlRootElement
public class StringWrapper {
public StringWrapper (){}
List<String> list=new ArrayList<String>();
public void add(String s) { list.add(s); }
@XmlValue
public List<String> getData() { return list; }
}
@XmlRootElement
公共类StringWrapper{
公共StringWrapper(){}
列表=新的ArrayList();
public void add(字符串s){list.add(s);}
@XmlValue
public List getData(){return List;}
}
该解决方案的可能副本不起作用!!真正地即使是这个:?看到了吗:请发布一个您希望从此端点返回的XML文档的示例。有了它,我们就可以使用它来获得一组合适的注释。或者在getter方法上使用@xmlement,我错了吗?
@XmlRootElement
public class StringWrapper {
public StringWrapper (){}
List<String> list=new ArrayList<String>();
public void add(String s) { list.add(s); }
@XmlValue
public List<String> getData() { return list; }
}