【发布时间】:2015-05-04 14:24:33
【问题描述】:
我有一个带有此端点的 REST API:
@GET
@Path("rol/{codEmp}")
@Produces(MediaType.TEXT_PLAIN)
public String getRole(@PathParam("codEmp") Long codEmp) {
return dao.getRole(codEmp);
}
响应示例可以是:HOUSEKEEPER。
我是这样吃的:
@Override
public String getRole(Long codEmp) {
HashMap<String, Object> urlVariables = new HashMap<String, Object>();
urlVariables.put("codEmp", codEmp);
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAccept(Collections.singletonList(MediaType.parseMediaType("text/plain")));
HttpEntity<Object> requestEntity = new HttpEntity<Object>(httpHeaders);
return restTemplate.exchange(rootUrl.concat("/rol/{codEmp}"), HttpMethod.GET, requestEntity, String.class, urlVariables).getBody();
}
但我收到此错误:
"无法提取响应:找不到合适的 HttpMessageConverter 对于响应类型 [java.lang.String] 和内容类型 [text/plain]"
我知道正确的方法是发送 JSON 响应,但我必须使用原始字符串。
我该如何解决?
谢谢
【问题讨论】:
-
首先你有不同的类型:getRole (Integer codEmp) getRol (Long codEmp)