dev@jersey.java.net

A message body writer for Java type, class java.util.ArrayList, and MIME media type, application/xml, was not found

From: Jordi Domingo Borràs <jordi.domingo_at_gmail.com>
Date: Mon, 23 Feb 2009 12:41:32 +0100

Hi!

Im getting this error:

GRAVE: A message body writer for Java type, class java.util.ArrayList, and
MIME media type, application/xml, was not found
23-feb-2009 12:35:39
com.sun.jersey.server.impl.application.WebApplicationImpl onException
GRAVE: Internal server error
javax.ws.rs.WebApplicationException
        at
com.sun.jersey.spi.container.ContainerResponse.write(ContainerResponse.java:240)
        at
com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:593)
        at
com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:514)
        at
com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:505)
        at
com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:359)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
        at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
        at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
        at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
        at java.lang.Thread.run(Thread.java:619)

Trying to do :


@GET
@Produces({"application/json","application/xml"})
public Response getPersones() {
    ResponseBuilder rb = Response.ok().entity(listPersones());
    return rb.build();
}

The method listPersones() just returns an List<Persona>

If i return a List<Persona>, just the same without wrapping it into a
response, everything goes fine:

@GET
@Produces({"application/json","application/xml"})
public List<Persona> getPersones() {
    return listPersones();
}

I dont know if its a bug or Im doing something wrong.. I need your help :)

Thanks!

Jordi