Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
BeanCreationException与Spring和Jackson API_Spring_Jackson - Fatal编程技术网

BeanCreationException与Spring和Jackson API

BeanCreationException与Spring和Jackson API,spring,jackson,Spring,Jackson,我在尝试将JacksonAPI与Spring3.0.6一起使用时遇到以下异常。我将1.8.9版的jackson JAR(core asl,mapper asl)放入类路径中,但由于一些JAR冲突,我面临错误:: Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#8': Instantiation of bean failed

我在尝试将JacksonAPI与Spring3.0.6一起使用时遇到以下异常。我将1.8.9版的jackson JAR(core asl,mapper asl)放入类路径中,但由于一些JAR冲突,我面临错误::

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name '(inner bean)#8': Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.http.converter.json.MappingJacksonHttpMessageConverter]: Constructor threw exception; nested exception is java.lang.NoSuchMethodError: org.codehaus.jackson.type.JavaType.<init>(Ljava/lang/Class;I)V
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:965) [org.springframework.beans-3.0.6.RELEASE.jar:]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:911) [org.springframework.beans-3.0.6.RELEASE.jar:]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485) [org.springframework.beans-3.0.6.RELEASE.jar:]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) [org.springframework.beans-3.0.6.RELEASE.jar:]
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:270) [org.springframework.beans-3.0.6.RELEASE.jar:]
    ... 30 more
Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.http.converter.json.MappingJacksonHttpMessageConverter]: Constructor threw exception; nested exception is java.lang.NoSuchMethodError: org.codehaus.jackson.type.JavaType.<init>(Ljava/lang/Class;I)V
    at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:141) [org.springframework.beans-3.0.6.RELEASE.jar:]
    at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:74) [org.springframework.beans-3.0.6.RELEASE.jar:]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:958) [org.springframework.beans-3.0.6.RELEASE.jar:]
    ... 34 more
Caused by: java.lang.NoSuchMethodError: org.codehaus.jackson.type.JavaType.<init>(Ljava/lang/Class;I)V
    at org.codehaus.jackson.map.type.TypeBase.<init>(TypeBase.java:13) [jackson-mapper-asl-1.8.9.jar:]
    at org.codehaus.jackson.map.type.SimpleType.<init>(SimpleType.java:39) [jackson-mapper-asl-1.8.9.jar:]
    at org.codehaus.jackson.map.type.SimpleType.constructUnsafe(SimpleType.java:56) [jackson-mapper-asl-1.8.9.jar:]
    at org.codehaus.jackson.map.ObjectMapper.<clinit>(ObjectMapper.java:188) [jackson-mapper-asl-1.8.9.jar:]
    at org.springframework.http.converter.json.MappingJacksonHttpMessageConverter.<init>(MappingJacksonHttpMessageConverter.java:56) [org.springframework.web-3.0.6.RELEASE.jar:]
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) [:1.6.0_24]
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) [:1.6.0_24]
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) [:1.6.0_24]
    at java.lang.reflect.Constructor.newInstance(Constructor.java:532) [:1.6.0_24]
    at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:126) [org.springframework.beans-3.0.6.RELEASE.jar:]
    ... 36 more
原因:org.springframework.beans.factory.BeanCreationException:创建名为“(内部bean)#8”的bean时出错:bean实例化失败;嵌套异常为org.springframework.beans.BeanInstantiationException:无法实例化bean类[org.springframework.http.converter.json.MappingJacksonHttpMessageConverter]:构造函数引发异常;嵌套的异常是java.lang.NoSuchMethodError:org.codehaus.jackson.type.JavaType
位于org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.InstanceBean(AbstractAutowireCapableBeanFactory.java:965)[org.springframework.beans-3.0.6.RELEASE.jar:]
位于org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:911)[org.springframework.beans-3.0.6.RELEASE.jar:]
位于org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485)[org.springframework.beans-3.0.6.RELEASE.jar:]
位于org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)[org.springframework.beans-3.0.6.RELEASE.jar:]
位于org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:270)[org.springframework.beans-3.0.6.RELEASE.jar:]
... 30多
原因:org.springframework.beans.BeanInstantiationException:无法实例化bean类[org.springframework.http.converter.json.MappingJacksonHttpMessageConverter]:构造函数引发异常;嵌套的异常是java.lang.NoSuchMethodError:org.codehaus.jackson.type.JavaType
在org.springframework.beans.BeanUtils.instanceClass(BeanUtils.java:141)[org.springframework.beans-3.0.6.RELEASE.jar:]
位于org.springframework.beans.factory.support.simpleinstationstrategy.instantiate(simpleinstationstrategy.java:74)[org.springframework.beans-3.0.6.RELEASE.jar:]
位于org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.InstanceBean(AbstractAutowireCapableBeanFactory.java:958)[org.springframework.beans-3.0.6.RELEASE.jar:]
... 34多
原因:java.lang.NoSuchMethodError:org.codehaus.jackson.type.JavaType。(Ljava/lang/Class;I)V
在org.codehaus.jackson.map.type.TypeBase.(TypeBase.java:13)[jackson-mapper-asl-1.8.9.jar:]
在org.codehaus.jackson.map.type.SimpleType.(SimpleType.java:39)[jackson-mapper-asl-1.8.9.jar:]
在org.codehaus.jackson.map.type.SimpleType.constructUnsafe(SimpleType.java:56)[jackson-mapper-asl-1.8.9.jar:]
在org.codehaus.jackson.map.ObjectMapper.(ObjectMapper.java:188)[jackson-mapper-asl-1.8.9.jar:]
位于org.springframework.http.converter.json.MappingJacksonHttpMessageConverter.(MappingJacksonHttpMessageConverter.java:56)[org.springframework.web-3.0.6.RELEASE.jar:]
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)[:1.6.0\u 24]
在sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)[:1.6.0\u 24]
在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)[:1.6.024]
在java.lang.reflect.Constructor.newInstance(Constructor.java:532)[:1.6.0_24]
在org.springframework.beans.BeanUtils.instanceClass(BeanUtils.java:126)[org.springframework.beans-3.0.6.RELEASE.jar:]
... 36多

Jackson对Spring 3.0.6的正确版本依赖关系是1.4.2(根据Spring的pom),尝试用此版本替换1.8.9,它应该可以正常工作。

感谢您的回复。然而,我可以解决这个问题做一些研发。。。我不需要深入到Jackson v1.4.2,而是使用了相同的版本,只是对JBoss配置本身进行了轻微修改

在JBoss中,转到modules/org/codehaus/jackson/jackson-core-asl/main/

在这里,JBoss使用自己版本的Jackson API(尽管我们在类路径中有不同的版本)。因此,我复制了v1.8.9,并在module.xml(在同一目录中)中做了相应的更改。MapperJARSV1.8.9也重复了类似的操作

有了这个,我可以修复问题并再次运行……)