Eug*_*vas 5 java web-services jersey
我在服务器端使用Jersey定义了一个web服务,如下所示:
@POST
@Consumes(MediaType.APPLICATION_XML)
@Path("/foo")
public Response bar(List<Foo> listFoo) {
try {
//save the resource
} catch (Exception e) {
log.error("Error saving", e);
return Response.status(Status.INTERNAL_SERVER_ERROR).build();
}
return Response.status(Status.OK).build();
}
Run Code Online (Sandbox Code Playgroud)
我试图在我的Jersey客户端获取服务器状态,如下所示:
Response response = ws.type(MediaType.APPLICATION_XML).post(Response.class,list);
Run Code Online (Sandbox Code Playgroud)
但我得到错误:
A message body reader for Java class javax.ws.rs.core.Response, and Java type class javax.ws.rs.core.Response, and MIME media type application/xml was not found javax.ws.rs.core.Response
Run Code Online (Sandbox Code Playgroud)
我真的不需要Response对象,只需要状态代码,我怎么能得到它?
好的,我通过更改请求响应类型解决了这个问题:
Response response = ws.type(MediaType.APPLICATION_XML).post(Response.class,list);
Run Code Online (Sandbox Code Playgroud)
和
ClientResponse response = ws.type(MediaType.APPLICATION_XML).post(ClientResponse.class,list);
Run Code Online (Sandbox Code Playgroud)
成为ClientResponse一个com.sun.jersey.api.client.ClientResponse
| 归档时间: |
|
| 查看次数: |
3979 次 |
| 最近记录: |