Estoy tratando de escribir una función genérica en Jersey que se puede usar para buscar una Lista de objetos del mismo tipo a través de REST. Me basé en las informaciones que se encuentran en este foro: linkObteniendo recurso REST como List <T> con Jersey
@Override
public <T> List<T> fetchResourceAsList(String url) {
ClientConfig cc = new DefaultClientConfig();
Client c = Client.create(cc);
if (userName!=null && password!=null) {
c.addFilter(new HTTPBasicAuthFilter(userName, password));
}
WebResource resource = c.resource(url);
return resource.get(new GenericType<List<T>>() {});
}
Sin embargo esto no está funcionando. Si intento ejecutarlo, aparece el siguiente error: SEVERE: A message body reader for Java class java.util.List, and Java type java.util.List<T>, and MIME media type application/xml was not found
.
Sin embargo, si escribo esta función sin plantillas (reemplazando T con un nombre de clase real) simplemente funciona bien. Por supuesto, de esta manera la función pierde su significado.
¿Hay alguna manera de arreglar esto?
Consulte a continuación enlace http://stackoverflow.com/questions/1603404/using-jaxb-to-unmarshal-marshal-a-liststring – fmucar
@fmucar: esto de nuevo tiene consejos para el servidor como Ya veo. Necesito soporte de tipo genérico para el cliente. – NagyI