title: Jersey Exception : SEVERE: A message body reader for Java class
body: <p>I have a Jersey based Rest WS which outputs JSON. I am implementing a Jersey Client to invoke the WS and consume the JSON response. The client code I have is below</p>
  
  <pre>
  WebResource r = restClient.resource(UriBuilder.fromUri("http://localhost/").port(8080).build());
  String resp = r.path("/user").accept(MediaType.APPLICATION_JSON).get(String.class);
  User[] users = r.path("/user").accept(MediaType.APPLICATION_JSON).get(User[].class);
  </pre>
  
  <p>The 2nd line outputs the JSON string response correctly, however the 3rd line to marshal JSON to the POJO is not happening and I get the following exception stacktrace</p>
  
  <pre>
  SEVERE: A message body reader for Java class [Lorg.shoppingsite.model.entity.jpa.User;, and Java type class [Lorg.shoppingsite.model.entity.jpa.User;, and MIME media type application/json was not found
  Dec 21, 2011 11:32:01 AM com.sun.jersey.api.client.ClientResponse getEntity
  SEVERE: The registered message body readers compatible with the MIME media type are:
  */* ->
    com.sun.jersey.core.impl.provider.entity.FormProvider
    com.sun.jersey.core.impl.provider.entity.StringProvider
    com.sun.jersey.core.impl.provider.entity.ByteArrayProvider
    com.sun.jersey.core.impl.provider.entity.FileProvider
    com.sun.jersey.core.impl.provider.entity.InputStreamProvider
    com.sun.jersey.core.impl.provider.entity.DataSourceProvider
    com.sun.jersey.core.impl.provider.entity.XMLJAXBElementProvider$General
    com.sun.jersey.core.impl.provider.entity.ReaderProvider
    com.sun.jersey.core.impl.provider.entity.DocumentProvider
    com.sun.jersey.core.impl.provider.entity.SourceProvider$StreamSourceReader
    com.sun.jersey.core.impl.provider.entity.SourceProvider$SAXSourceReader
    com.sun.jersey.core.impl.provider.entity.SourceProvider$DOMSourceReader
    com.sun.jersey.core.impl.provider.entity.XMLRootElementProvider$General
    com.sun.jersey.core.impl.provider.entity.XMLListElementProvider$General
    com.sun.jersey.core.impl.provider.entity.XMLRootObjectProvider$General
    com.sun.jersey.core.impl.provider.entity.EntityHolderReader
  </pre>
  
  <p>I have the correct MIME TYPES in my request. My POJO has been annotated with XMLRootElement. What am I missing. </p>
  
  <p>Thank you</p>