当我尝试使用post方法发布新对象时。RequestBody无法识别contentType。已经配置了Spring,并且POST可以与其他对象一起使用,但不能与特定对象一起使用。
org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'application/json;charset=UTF-8' not supported
如果我尝试相同的请求,只需更改requestbody对象。有用。
我找到了解决方案。这是因为我有两个名字相同但类型不同的二传手。
我的班级有id属性int,在àHibernitify我的对象时,我将其替换为Integer。
但是很显然,我忘记删除二传手了,我有:
/**
* @param id
* the id to set
*/
public void setId(int id) {
this.id = id;
}
/**
* @param id
* the id to set
*/
public void setId(Integer id) {
this.id = id;
}
当我删除此二传手时,其余请求工作效果很好。
引发抛出编组错误或反映类错误。异常HttpMediaTypeNotSupportedException接缝在这里真的很奇怪。
我希望这个stackoverflow可以对其他人有所帮助。
SIDE NOTE
你可以在Spring服务器控制台中检查以下错误消息:
无法评估类型[简单类型,类your.package.ClassName]的Jackson反序列化:com.fasterxml.jackson.databind.JsonMappingException:属性“ propertyname”的setter定义冲突
然后,你可以确定要解决上述问题。
我收到以下异常: 我的测试如下所示: BaseTest为:
如果我尝试相同的请求,只是更改requestbody对象。它起作用了。
我的控制器如下所示: 我已经尝试将“consumes”更改为将APPLICATION_OCTET_STREAM_VALUE删除为MULTIPART_FORM_DATA_VALUE,也尝试删除它,但这些都没有帮助。 如果你需要更多的信息,请告诉我。谢了。
我已经构建了一个RESTendpoint,它使用Spring和Apache CXF2.5来使用和生成Application/JSON。 配置: 当我使用不受支持的内容类型(如application/xml)发送请求(使用REST客户端应用程序)时,我会得到一个内部服务器错误。我希望是405,因为endpoint不支持任何其他内容类型。为什么我会得到这个例外?
Spring 5.0.7:MVC、数据、安全。我配置。
我正在Eclipse Enterprise中通过Spring框架而不是Spring Boot编写一个MVC项目。使用Postman,我将向我的方法发送一个json对象: 但是在Eclipse中,我收到了这个错误: 我认为这与我的pom.xml和依赖有关: pom中是否有任何内容。xml我应该更改吗? 其他细节如网络。xml: -servlet.xml