我正在使用运动衫休息申请。
我在将对象列表从JSON转换为Object时遇到错误。
球衣客户代码
def itemList= clientResponse.getEntity(new GenericType<List<Item>>(){});
堆栈跟踪
Error |
java.lang.NoSuchMethodException: java.util.List.<init>()
Error |
at java.lang.Class.getConstructor0(Class.java:3074)
Error |
at java.lang.Class.getDeclaredConstructor(Class.java:2170)
Error |
at org.springsource.loaded.ri.ReflectiveInterceptor.jlClassGetDeclaredConstructor(ReflectiveInterceptor.java:456)
Error |
at org.springsource.loaded.ri.ReflectiveInterceptor.jlClassNewInstance(ReflectiveInterceptor.java:983)
Error |
at com.sun.jersey.core.provider.jaxb.AbstractListElementProvider.readFrom(AbstractListElementProvider.java:306)
Error |
at com.sun.jersey.api.client.ClientResponse.getEntity(ClientResponse.java:634)
Error |
at com.sun.jersey.api.client.ClientResponse.getEntity(ClientResponse.java:604)
Error |
at com.sun.jersey.api.client.ClientResponse$getEntity.call(Unknown Source)
虽然我在itemList中获得了正确的值。
任何人都可以告诉我它为什么会来,避免它的解决方案是什么?
答案 0 :(得分:1)
看起来Jersey正在尝试通过反射实例化一个接口(List),并因为无法找到构造函数而失败。
泽西岛代码应为
new GenericType<ArrayList<Item>>()