【发布时间】:2014-10-22 15:04:53
【问题描述】:
我正在尝试编写一个简单的 Resteasy 客户端来访问 mt rest web 服务。不幸的是,我收到了错误:
Exception in thread "main" org.jboss.resteasy.client.ClientResponseFailure: Unable to find a MessageBodyReader of content-type application/json and type null
at org.jboss.resteasy.client.core.BaseClientResponse.createResponseFailure(BaseClientResponse.java:523)
at org.jboss.resteasy.client.core.BaseClientResponse.createResponseFailure(BaseClientResponse.java:514)
at org.jboss.resteasy.client.core.BaseClientResponse.readFrom(BaseClientResponse.java:415)
at org.jboss.resteasy.client.core.BaseClientResponse.getEntity(BaseClientResponse.java:377)
at org.jboss.resteasy.client.core.BaseClientResponse.getEntity(BaseClientResponse.java:350)
at org.jboss.resteasy.client.core.BaseClientResponse.getEntity(BaseClientResponse.java:344)
at com.test.client.rest.employee.EmployeeClient.main(EmployeeClient.java:29)
客户端代码:
ClientRequest request = new ClientRequest(ROOT_URL + "getEmp/GS");
ClientResponse<Employee> resp = request.get(Employee.class);
//Response resp = request.get();
if(resp.getResponseStatus().getStatusCode() == 200)
{
System.out.println("resp ok!!!");
}
Employee e = resp.getEntity(Employee.class);
System.out.println("path:" + e);
休息服务代码:
@GET
@Path("getEmp/{name}")
@Produces("application/json")
public Employee getEmployee(@PathParam("name") String name)
{
if(em.containsKey(name))
return em.get(name);
else
throw new EmployeeNotFoundException("Employee with name '" + name + "' does not exists!");
}
客户端代码响应正常。即 200。相同的 url 适用于 Mozilla Rest 客户端。任何帮助将不胜感激
【问题讨论】:
标签: java rest jboss7.x resteasy