[jboss-jira] [JBoss JIRA] Commented: (AS7-1406) Classloading / module issue with using resteasy-jackson-provider and joda classes
Sebastian Jancke (JIRA)
jira-events at lists.jboss.org
Tue Jul 26 11:32:23 EDT 2011
[ https://issues.jboss.org/browse/AS7-1406?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12616519#comment-12616519 ]
Sebastian Jancke commented on AS7-1406:
---------------------------------------
Fix:
[module.xml of org.codehaus.jackson.jackson-mapper-asl]
<module xmlns="urn:jboss:module:1.0" name="org.codehaus.jackson.jackson-mapper-asl">
<resources>
<resource-root path="jackson-mapper-asl-1.6.3.jar"/>
<!-- Insert resources here -->
</resources>
<dependencies>
<module name="org.codehaus.jackson.jackson-core-asl"/>
<module name="javax.api" />
<module name="org.joda.time" />
</dependencies>
</module>
[new module org.joda.time]
<module xmlns="urn:jboss:module:1.0" name="org.joda.time">
<resources>
<resource-root path="joda-time-1.6.2.jar"/>
<!-- Insert resources here -->
</resources>
<dependencies>
</dependencies>
</module>
> Classloading / module issue with using resteasy-jackson-provider and joda classes
> ---------------------------------------------------------------------------------
>
> Key: AS7-1406
> URL: https://issues.jboss.org/browse/AS7-1406
> Project: Application Server 7
> Issue Type: Bug
> Components: Modules
> Affects Versions: 7.0.0.Final
> Reporter: Sebastian Jancke
> Assignee: David Lloyd
> Labels: classloader, jodatime, resteasy
>
> Classes of org.joda.time cannot be deserialized from JSON with the standard, built-in JodaDeserializer of org.codehaus.jackson, used by resteasy in the resteasy-jackson-provider.
> Cause: jackson-mapper-asl (and possibly others) have no module-dependency to a (missing) module org.joda.time and thus cannot load the classes.
> Stacktrace:
> lang.ClassNotFoundException: org.joda.time.ReadableInstant from [Module "org.codehaus.jackson.jackson-mapper-asl:main" from local module loader @4ce66
> f56 (roots: OBFUSCATED\jboss-as-7.0.0.Final\modules)]
> at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:191)
> at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:358)
> at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:330)
> at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:307)
> at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:101)
> at org.codehaus.jackson.map.ext.JodaDeserializers.provide(JodaDeserializers.java:32) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.ext.OptionalHandlerFactory.findDeserializer(OptionalHandlerFactory.java:118) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.deser.BasicDeserializerFactory.createBeanDeserializer(BasicDeserializerFactory.java:358) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.deser.BeanDeserializerFactory.createBeanDeserializer(BeanDeserializerFactory.java:57) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.deser.StdDeserializerProvider._createDeserializer(StdDeserializerProvider.java:342) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.deser.StdDeserializerProvider._createAndCache2(StdDeserializerProvider.java:264) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.deser.StdDeserializerProvider._createAndCacheValueDeserializer(StdDeserializerProvider.java:244) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.deser.StdDeserializerProvider.findValueDeserializer(StdDeserializerProvider.java:111) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.deser.StdDeserializer.findDeserializer(StdDeserializer.java:482) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.deser.BeanDeserializer.resolve(BeanDeserializer.java:271) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.deser.StdDeserializerProvider._resolveDeserializer(StdDeserializerProvider.java:348) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.deser.StdDeserializerProvider._createAndCache2(StdDeserializerProvider.java:303) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.deser.StdDeserializerProvider._createAndCacheValueDeserializer(StdDeserializerProvider.java:244) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.deser.StdDeserializerProvider.findValueDeserializer(StdDeserializerProvider.java:111) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.jsontype.impl.TypeDeserializerBase._findDeserializer(TypeDeserializerBase.java:77) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.jsontype.impl.AsPropertyTypeDeserializer.deserializeTypedFromObject(AsPropertyTypeDeserializer.java:65) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.deser.AbstractDeserializer.deserializeWithType(AbstractDeserializer.java:81) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.deser.SettableBeanProperty.deserialize(SettableBeanProperty.java:147) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.deser.SettableBeanProperty$MethodProperty.deserializeAndSet(SettableBeanProperty.java:237) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:496) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.deser.BeanDeserializer.deserialize(BeanDeserializer.java:350) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.ObjectMapper._readValue(ObjectMapper.java:1961) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.map.ObjectMapper.readValue(ObjectMapper.java:889) [jackson-mapper-asl-1.6.3.jar:1.6.3]
> at org.codehaus.jackson.jaxrs.JacksonJsonProvider.readFrom(JacksonJsonProvider.java:410)
> at org.jboss.resteasy.core.interception.MessageBodyReaderContextImpl.proceed(MessageBodyReaderContextImpl.java:105) [resteasy-jaxrs-2.2.1.GA.jar:]
> at org.jboss.resteasy.plugins.interceptors.encoding.GZIPDecodingInterceptor.read(GZIPDecodingInterceptor.java:61) [resteasy-jaxrs-2.2.1.GA.jar:]
> at org.jboss.resteasy.core.interception.MessageBodyReaderContextImpl.proceed(MessageBodyReaderContextImpl.java:108) [resteasy-jaxrs-2.2.1.GA.jar:]
> at org.jboss.resteasy.plugins.interceptors.encoding.GZIPDecodingInterceptor.read(GZIPDecodingInterceptor.java:61) [resteasy-jaxrs-2.2.1.GA.jar:]
> at org.jboss.resteasy.core.interception.MessageBodyReaderContextImpl.proceed(MessageBodyReaderContextImpl.java:108) [resteasy-jaxrs-2.2.1.GA.jar:]
> at org.jboss.resteasy.core.MessageBodyParameterInjector.inject(MessageBodyParameterInjector.java:168) [resteasy-jaxrs-2.2.1.GA.jar:]
> at org.jboss.resteasy.core.MethodInjectorImpl.injectArguments(MethodInjectorImpl.java:114) [resteasy-jaxrs-2.2.1.GA.jar:]
> at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:137) [resteasy-jaxrs-2.2.1.GA.jar:]
> at org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:255) [resteasy-jaxrs-2.2.1.GA.jar:]
> at org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:220) [resteasy-jaxrs-2.2.1.GA.jar:]
> at org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:209) [resteasy-jaxrs-2.2.1.GA.jar:]
> at org.jboss.resteasy.core.SynchronousDispatcher.getResponse(SynchronousDispatcher.java:519) [resteasy-jaxrs-2.2.1.GA.jar:]
> at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:496) [resteasy-jaxrs-2.2.1.GA.jar:]
> at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:119) [resteasy-jaxrs-2.2.1.GA.jar:]
> at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:208) [resteasy-jaxrs-2.2.1.GA.jar:]
> at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:55) [resteasy-jaxrs-2.2.1.GA.jar:]
> at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:50) [resteasy-jaxrs-2.2.1.GA.jar:]
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:847) [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]
> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:329) [jbossweb-7.0.0.CR4.jar:7.0.0.Final]
> at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.0.CR4.jar:7.0.0.Final]
> at org.jboss.weld.servlet.ConversationPropagationFilter.doFilter(ConversationPropagationFilter.java:67) [weld-core-1.1.2.AS7.jar:2011-07-06 12
> :26]
> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280) [jbossweb-7.0.0.CR4.jar:7.0.0.Final]
> at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.0.CR4.jar:7.0.0.Final]
> at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275) [jbossweb-7.0.0.CR4.jar:7.0.0.Final]
> at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161) [jbossweb-7.0.0.CR4.jar:7.0.0.Final]
> at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:480) [jbossweb-7.0.0.CR4.jar:7.0.0.Final]
> at org.jboss.as.web.NamingValve.invoke(NamingValve.java:57) [jboss-as-web-7.0.0.Final.jar:7.0.0.Final]
> at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:49) [jboss-as-jpa-7.0.0.Final.jar:7.0.0.Final]
> at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:154) [jbossweb-7.0.0.CR4.jar:7.0.0.Final]
> at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) [jbossweb-7.0.0.CR4.jar:7.0.0.Final]
> at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) [jbossweb-7.0.0.CR4.jar:7.0.0.Final]
> at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:362) [jbossweb-7.0.0.CR4.jar:7.0.0.Final]
> at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877) [jbossweb-7.0.0.CR4.jar:7.0.0.Final]
> at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:667) [jbossweb-7.0.0.CR4.jar:7.0.0.Final]
> at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:951) [jbossweb-7.0.0.CR4.jar:7.0.0.Final]
> at java.lang.Thread.run(Thread.java:662) [:1.6.0_24]
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list