无法找到内容类型 application/json 和类型类 java.lang.String 的 MessageBodyReader

2024-02-29

我正在使用 RestEasy 客户端与杰克逊提供商并收到上述错误

客户端代码是:

ClientRequest request = new ClientRequest(url);
request.accept(MediaType.APPLICATION_JSON);
ClientResponse<String> response = request.get(String.class);

if (response.getStatus() != 200) {
  throw new RuntimeException("Failed : HTTP error code : " + response.getStatus());
}

BufferedReader br =
  new BufferedReader(new InputStreamReader(new ByteArrayInputStream(response.getEntity().getBytes())));

response.getEntity()正在投掷ClientResponseFailure异常,错误是

Unable to find a MessageBodyReader of content-type application/json and type class java.lang.String

我的服务器端代码如下:

@GET
@Path("/{itemId}")
@Produces(MediaType.APPLICATION_JSON)
public String item(@PathParam("itemId") String itemId) {
  //custom code

  return gson.toJSON(object);
}

您可以尝试将以下依赖项添加到您的 Maven pom.xml 中:

   <dependency>
    <groupId>org.jboss.resteasy</groupId>
    <artifactId>resteasy-jackson-provider</artifactId>
    <version>2.3.4.Final</version>
   </dependency>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法找到内容类型 application/json 和类型类 java.lang.String 的 MessageBodyReader 的相关文章

随机推荐