You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot 2.5.5+JBoss 7.3.3 GA下Jackson依赖方法缺失错误求助

问题解决:Jackson XML模块方法缺失导致的NoSuchMethodError

错误详情

[org/springframework/boot/autoconfigure/web/servlet/WebMvcAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.boot.web.servlet.filter.OrderedFormContentFilter]: Factory method 'formContentFilter' threw exception; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.dataformat.xml.XmlMapper.coercionConfigDefaults()Lcom/fasterxml/jackson/databind/cfg/MutableCoercionConfig;
[cvgDeployer]     Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'formContentFilter' defined in class path resource [org/springframework/boot/autoconfigure/web/servlet/WebMvcAutoConfiguration.class]: Bean instantiation via factory method failed;
  nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.boot.web.servlet.filter.OrderedFormContentFilter]: Factory method 'formContentFilter' threw exception; 
  nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.dataformat.xml.XmlMapper.coercionConfigDefaults()Lcom/fasterxml/jackson/databind/cfg/MutableCoercionConfig;
[cvgDeployer]     Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.boot.web.servlet.filter.OrderedFormContentFilter]: Factory method 'formContentFilter' threw exception; 
  nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.dataformat.xml.XmlMapper.coercionConfigDefaults()Lcom/fasterxml/jackson/databind/cfg/MutableCoercionConfig;
[cvgDeployer]     Caused by: java.lang.NoSuchMethodError: com.fasterxml.jackson.dataformat.xml.XmlMapper.coercionConfigDefaults()Lcom/fasterxml/jackson/databind/cfg/MutableCoercionConfig;"}}}}}}}}}}}}

原因分析

这个错误是Jackson XML模块(jackson-dataformat-xml)和Jackson Databind版本不匹配,或者JBoss服务器自带的Jackson版本与Spring Boot依赖的版本冲突导致的。coercionConfigDefaults()方法是Jackson 2.12+版本新增的,如果XML模块版本低于2.12,或者服务器中的旧版本Jackson被优先加载,就会出现该方法找不到的问题。

解决步骤

1. 统一Jackson依赖版本

Spring Boot 2.5.5默认依赖Jackson 2.12.5,确保项目中所有Jackson相关依赖(包括jackson-dataformat-xml)都使用这个版本。Maven项目可在pom.xml中锁定版本:

<properties>
    <jackson.version>2.12.5</jackson.version>
</properties>

<dependencies>
    <!-- 其他业务依赖 -->
    <dependency>
        <groupId>com.fasterxml.jackson.dataformat</groupId>
        <artifactId>jackson-dataformat-xml</artifactId>
        <version>${jackson.version}</version>
    </dependency>
</dependencies>

2. 排除JBoss自带的Jackson模块

JBoss 7.3自带Jackson库,会和应用依赖冲突。需在项目src/main/webapp/WEB-INF/jboss-deployment-structure.xml中添加配置,排除服务器端的Jackson模块:

<jboss-deployment-structure>
    <deployment>
        <exclude-subsystems>
            <subsystem name="jackson"/>
        </exclude-subsystems>
        <exclusions>
            <module name="com.fasterxml.jackson.core.jackson-core"/>
            <module name="com.fasterxml.jackson.core.jackson-databind"/>
            <module name="com.fasterxml.jackson.core.jackson-annotations"/>
            <module name="com.fasterxml.jackson.datatype.jackson-datatype-jdk8"/>
            <module name="com.fasterxml.jackson.datatype.jackson-datatype-jsr310"/>
            <module name="com.fasterxml.jackson.module.jackson-module-jaxb-annotations"/>
            <module name="com.fasterxml.jackson.dataformat.jackson-dataformat-xml"/>
        </exclusions>
    </deployment>
</jboss-deployment-structure>

3. 检查并清理依赖冲突

用Maven命令查看依赖树,定位冲突的Jackson版本:

mvn dependency:tree | grep jackson

如果发现其他依赖引入了旧版本Jackson,在对应依赖中添加排除规则:

<dependency>
    <!-- 存在冲突的第三方依赖 -->
    <groupId>xxx</groupId>
    <artifactId>xxx</artifactId>
    <exclusions>
        <exclusion>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
        </exclusion>
        <!-- 按需排除其他Jackson模块 -->
    </exclusions>
</dependency>

内容的提问来源于stack exchange,提问作者NAGNATH S IPPER

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 07:12:55