2016-06-24 2 views
0

저지 편안 응용 프로그램을 사용하고 있습니다.java.util.List. <init>() GenericType 저지 클라이언트

개체 목록을 JSON에서 개체로 변환하는 중에 오류가 발생합니다.

저지 클라이언트 코드

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에에 정확한 값을 얻고 있지만.

누군가가 왜 그것이오고 왜 그것을 피할 수있는 해결책을 말해 줄 수 있습니까?

답변

1

Jersey가 리플렉션을 통해 인터페이스 (목록)를 인스턴스화하려고 시도하는 것처럼 보이며 생성자를 찾을 수 없기 때문에 실패합니다.

저지 코드가 있어야한다

new GenericType<ArrayList<Item>>()