Problema com List e RESTEasy: Could not find MessageBodyWriter for response object of type

0 respostas
V

Olá pessoal,

Estou usando o RESTEasy e estou tendo um problema em definir um método que retorna uma lista, em uma classe que usa generics.

Se eu implemento o método deste jeito funciona:

@GET
	@Produces(MediaType.TEXT_XML)
	@Path("/all")
        @Override
	public List<Unidade> findAll() throws Exception {
		return super.findAll();
	}

…neste caso o método está na subclasse. O problema é que uso este método para várias classes resource cujo tipo da lista é diferente.
Então eu tenho uma superclasse com o método assim:

@GET
	@Produces(MediaType.TEXT_XML)
	@Path("/all")
	@Override
	public List<T> findAll() throws Exception {
		try {
			return this.getService().findAll();
		} catch (Exception e) {
			Logger.error("Erro retornando lista de objetos da classe "
					+ this.getType().getName(), e);
			throw e;
		}
	}

…gostaria de não precisar sobrepor o método na subclasse, só que usando a chamada do método direto da super classe eu tenho a seguinte exceção:

55810 [http-8080-1] ERROR org.jboss.resteasy.core.SynchronousDispatcher - Failed executing GET /resource/1028/unidade/all
org.jboss.resteasy.core.NoMessageBodyWriterFoundFailure: Could not find MessageBodyWriter for response object of type: java.util.ArrayList of media type: text/xml
Criado 4 de abril de 2011
Respostas 0
Participantes 1