我有以下要返回的Web服务和数组
的值@GET
@Consumes("text/plain")
@Produces("text/plain")
public String[] getText(@PathParam("name") String Uname) {
//TODO return proper representation object
System.out.println("In Method " + Uname);
String arr[]=null;
arr=new String[2];
arr[0]="demo";
arr[1]="demo2";
return arr;
}
但是当我测试这个Web服务时,它给了我这个错误:GET RequestFailed RequestFailed --> Status: (406) Response: {
那么,如果我想从REST Web服务返回一个数组,该怎么办?
答案 0 :(得分:2)
HTTP响应不支持纯文本响应中的数组。您需要手动将数组表示为String,将返回类型更改为String并返回如下:
return Arrays.toString(arr);
或者您可以将数组转换为List: return Arrays.asList(arr);
并使用该方法将其作为JSON或XML返回: Jersey: Return a list of strings