我通过使用Spring开发rest api。
因此,我的其他api调用了另一个api。例如Oracle ORDS。
private String processBackground(String object, String url, HttpMethod templete) {
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
logger.warn(object);
HttpEntity request = new HttpEntity<>(object, headers);
logger.info(request.toString());
ResponseEntity<String> responseEntity;
responseEntity = restTemplate.exchange(url, templete, request, String.class);
logger.info(responseEntity.getBody());
return responseEntity.getBody();
}
我认为此部分有误。
错误消息
{
"timestamp": "2019-04-30T09:18:54.586+0000",
"status": 500,
"error": "Internal Server Error",
"message": "No converter found for return value of type: class org.json.JSONObject",
"path": "/mainrequest"
}
救救我! 谢谢;)
答案 0 :(得分:0)
此消息意味着您在Spring上下文中没有HttpMessageConverter能够处理MediaType application / json的JSONObject到String的转换。
看看这篇关于消息转换器以及如何实现自己的消息的帖子:https://www.baeldung.com/spring-httpmessageconverter-rest
快速解决方案可能是期望响应实体主体为JSONObject,因为您应该具有默认的JSON HttpMessageConverter,如下所示:
ResponseEntity<JSONObject> responseEntity;