如果我传输具有 @XmlRoolElement 的类( MyClass ),此代码工作正常
客户
WebResource webResource = restClient.resource(getRessourceURL());
return webResource.get( new GenericType<List<MyClass>>(){} );
但是,如果我尝试传输一个原语,如字符串、整数、布尔值等......
客户
WebResource webResource = restClient.resource(getRessourceURL());
return webResource.get( new GenericType<List<Integer>>(){} );
我收到错误消息:
无法将类型“java.lang.Integer”编组为元素,因为它缺少 @XmlRootElement 注释
向我的请求发送实体参数时,我得到完全相同的结果:
客户
WebResource webResource = restClient.resource(getRessourceURL());
return webResource.post( new GenericType<List<Integer>>(){}, Arrays.toList("1"));
服务器
@GET
@Path("/PATH")
@Produces(MediaType.APPLICATION_JSON)
public List<MyClass> getListOfMyClass( List<Integer> myClassIdList)
{
return getMyClassList(myClassIdList);
}
有没有办法在不为这些原始类型中的每一个创建包装类的情况下转移这种列表?还是我错过了一些明显的东西?