使用REST访问JPA数据失败找不到合适的HttpMessageConverter

时间:2014-11-24 22:25:48

标签: java spring rest jpa spring-boot

我一直在与此作斗争一段时间,无法找到解决方案。我正在运行SpringBoot指南,并且使用REST访问JPA数据(http://spring.io/guides/gs/accessing-data-rest/)不起作用。

只需下载并运行它就可以正常运行,以便进行GET调用

http://localhost:8080/people 

使用POSTMAN。但是每当我尝试PUT或POST时,我都会收到以下错误

{
 "cause": null,
 "message": "No suitable HttpMessageConverter found to read request body into object of type           class hello.Person from request with content type of text/plain;charset=UTF-8!"
}

我和PUT一起传递的json是

{
"firstName": "Dave",
"lastName": "Something"
}

这只是运行vanilla项目而没有任何变化。很多其他指南项目工作正常,所以我知道MVN,Spring启动等工作正常。

尝试过很多论坛,但没有任何建议可行。

非常感谢任何帮助。

由于 戴夫

4 个答案:

答案 0 :(得分:21)

您的POST请求的内容类型为text/plain,服务器不知道如何将纯文本转换为hello.Person实例。

您需要通过将请求的Content-Type标头设置为application/json

来告诉服务器您正在发送JSON

答案 1 :(得分:3)

我使用谷歌浏览器的Postman扩展程序并发送了RAW JSON {" firstName" :" Frodo"," lastName" :" Baggins" } 它工作了

还要在标题中记住指定Content-Type:application / json

答案 2 :(得分:0)

Content-Type:application / json尝试删除内容类型:*和标题中的应用程序之间的空格。

答案 3 :(得分:0)

尝试在http请求中添加值为Content-type的{​​{1}}头。