Verwenden des Java-generics-Vorlagentyps im RESTful Response-Objekt über GenericEntity <List <T >>

Ich habe eine generische JAX-RS-Ressourcenklasse und ich habe eine generische definiertfindAll Methode

public abstract class GenericDataResource<T extends GenericModel> {

    @GET
    @Produces(MediaType.APPLICATION_JSON)
    public Response findAll() {
        Query query = em.createNamedQuery(modelClass.getSimpleName()+".findAll");
        List<T> list = query.getResultList();
        return Response.ok(new GenericEntity<List<T>>(list) {}).build();
    }
}

und Benutzerklasse:

public class User extends GenericModel {
    ...
}

Und hier ist ein Beispiel für eine Unterklassendefinition:

@Path("users")
public class UserResource extends GenericDataResource<User> {

    public UserResource() {
        super(User.class);
    }
}

Ich komme unter Ausnahme:

com.sun.jersey.api.MessageException: A message body writer for Java class 
java.util.Vector, and Java type java.util.List<T>, 
and MIME media type application/json was not found exception.

Wenn ich T durch eine definierte Klasse wieUser wie so:

GenericEntity<List<User>>(list)

dann funktioniert es gut.

Irgendeine Idee, wie ich es mit generischem T arbeiten lassen kann?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage