Http 泽西-波乔通讯公司,GetEntity不

Http 泽西-波乔通讯公司,GetEntity不,http,rest,jersey,pojo,Http,Rest,Jersey,Pojo,我使用第4.3章在rest服务中与POJO通信。目前我可以发布并获得pojo。它很好用。但当我尝试获取我的响应的实体时,我得到了以下异常: 27.06.2012 10:44:44 com.sun.jersey.api.client.ClientResponse getEntity SCHWERWIEGEND: A message body reader for Java class javax.xml.bind.JAXBElement, and Java type class javax.

我使用第4.3章在rest服务中与POJO通信。目前我可以发布并获得pojo。它很好用。但当我尝试获取我的响应的实体时,我得到了以下异常:

 27.06.2012 10:44:44 com.sun.jersey.api.client.ClientResponse getEntity
 SCHWERWIEGEND: A message body reader for Java class javax.xml.bind.JAXBElement, and  Java type class javax.xml.bind.JAXBElement, and MIME media type application/xml was not found
 27.06.2012 10:44:44 com.sun.jersey.api.client.ClientResponse getEntity
 SCHWERWIEGEND: The registered message body readers compatible with the MIME media type are:
 application/xml ->
在服务器端,我像这样包装实体:

  res = Response.created(UriBuilder.fromUri(uriInfo.getAbsolutePath() + "/" + object.getObjectId()).build()).entity(new JAXBElement<ObjectPOJO>(new QName("objectpojo"), ObjectPOJO.class, object)).build();
res=Response.created(UriBuilder.fromUri(uriInfo.getAbsolutePath()+“/”+object.getObjectId()).build()).entity(新的JAXBElement(新的QName(“objectpojo”),objectpojo.class,object)).build();
我也试过了,只是在没有JAXBElement的情况下包装pojo

在客户端,我尝试了不同的方法:

 GenericType<JAXBElement<ObjectPOJO>> objectType = new GenericType<JAXBElement<ObjectPOJO>>() {};
 objectType = (GenericType<JAXBElement<ObjectPOJO>>) res.getEntity(JAXBElement.class).getValue();

 object = res.getEntity(ObjectPOJO.class);
GenericType objectType=新的GenericType(){};
objectType=(GenericType)res.getEntity(JAXBElement.class).getValue();
object=res.getEntity(ObjectPOJO.class);
等等。有人知道什么是正确的方法吗?正如我所说,get和post通信工作正常。

应该是:

ObjectPOJO object = res.getEntity(new GenericType<JAXBElement<ObjectPOJO>>() {}).getValue();
ObjectPOJO object=res.getEntity(新的GenericType(){}).getValue();

谢谢你,伙计,你过去帮了我很多忙。一个错误:它应该是getValue()