有关 Java (jackson包问题 ,MappingJacksonHttpMessageConverter 和 MappingJackson2HttpMessageConverter问题)

今天这一系列问题吃掉我四个小时,所以现在吸收掉。

 

一。 整理所有错误信息:

1.错误信息:java.lang.NoClassDefFoundError: Could not initialize class org.springframework.http.converter.json.MappingJackson2HttpMessageConverter

 

解决:将配置文件中的  MappingJackson2HttpMessageConverter 改成 MappingJacksonHttpMessageConverter

如下:


<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
    <property name="messageConverters">
        <bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"></bean>
    </property>
</bean>
 

问题分析:可能你的 Spring 版本低于 4.1.1 ,MappingJackson2HttpMessageConverter 这个属性在 Spring 4.1.1 版本之前是没有的。

反之,如果上面的异常是  MappingJacksonHttpMessageConverter也就是说你的版本只支持 MappingJackson2HttpMessageConverter

 

 

2. 错误信息:Handler processing failed; nested exception is java.lang.NoSuchMethodError: org.codehaus.jackson.map.SerializationConfig.isEnabled(Lorg/codehaus/jackson/map/SerializationConfig$Feature;)Z

如果你提交表单之后,页面出现了 500 的错误代码,并且错误信息和上面一致,请看解决:

将你的 jackson 的版本换成 1.9.11 或 以上的。

 下载地址:ctrl + F 搜索 jackson

问题分析:呃,就是你的版本太低了,不支持,恩。。就是这个原因让我卡在了第一步

 

 

3.错误信息: No adapter for handler [com.q.backoffice.web.controller.UserController3@61ae8d7a]: The DispatcherServlet configuration needs to include a HandlerAdapter that supports this handler

 

解决:

在你的配置文件中添加

<!--   2. 配置注解,处理映射    -->
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"></bean>

 

问题分析:在你的程序中某处使用了注解,但是你却没有在配置文件中设置。

 

 

 

 

 

 

不要让你的人生止步于此,加油!

posted @ 2019-04-17 20:39  _Q  阅读(7903)  评论(0编辑  收藏  举报