记一次Content type 'application/json;charset=UTF-8' not supported解决方案

在自己搭建的spring mvc中会抛出如下的异常:

 

发现的controller接口是这样配置的:

 

然后我的postman的请求是这样的:

 

当我怎么修改请求的媒体头类型的时候,这个问题依然存在,虽然程序库顺利的执行到我的代码上,但是却获取不到我从postman提交过来的参数,于是就根据控制台抛出的代码路径跟踪代码,通过debug得出如下图:

 

发现StringHttpMessageConverter这个类根本不能处理我postman的请求方式,而且这个消息转换接口在我的spring配置中只做了如下配置

 

所以我在这个类的同一个jar包中找到了一个可以用来支持json解析的类,

 

就是这个类,具体的一些说明,感兴趣的读者可以打开spring源码查看,需要把这个类注册到spring容器中,如下图:

 

当然了,这个消息转换接口的实现类能够顺利执行,还需要jackson来支持,具体的maven座标如下:

<dependency>

  <groupId>com.fasterxml.jackson.core</groupId>

  <artifactId>jackson-core</artifactId>

  <version>2.8.3</version>

</dependency>

 

<dependency>

  <groupId>com.fasterxml.jackson.core</groupId>

  <artifactId>jackson-annotations</artifactId>

  <version>2.8.3</version>

</dependency>

 

<dependency>

  <groupId>com.fasterxml.jackson.core</groupId>

  <artifactId>jackson-databind</artifactId>

  <version>2.8.3</version>

</dependency>

 

到此问题就已经解决了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章