felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Richard S. Hall (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (FELIX-3003) NPE in ResolverImpl.permutateIfNeeded
Date Fri, 29 Jun 2012 22:12:44 GMT

     [ https://issues.apache.org/jira/browse/FELIX-3003?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Richard S. Hall resolved FELIX-3003.
------------------------------------

    Resolution: Fixed

This has been fixed in the 4.0.3 release candidate. It won't be ported to trunk since the
trunk resolver will be completely replaced by the OBR resolver which fixes this separately.

Please close this issue if you are satisfied. Thanks.
                
> NPE in ResolverImpl.permutateIfNeeded
> -------------------------------------
>
>                 Key: FELIX-3003
>                 URL: https://issues.apache.org/jira/browse/FELIX-3003
>             Project: Felix
>          Issue Type: Bug
>          Components: Framework
>    Affects Versions: framework-3.0.9
>         Environment: karaf 2.2.1, activemq 5.5.0
>            Reporter: Torsten
>            Assignee: Richard S. Hall
>             Fix For: framework-4.0.3
>
>         Attachments: felix-3003-bundle103-headers.txt, felix-3003-bundle123-headers.txt,
felix-3003-resolverimpl-sysout-NPE.txt
>
>
> After upgrade to Karaf 2.2.1, I noticed the following NPE in the Felix framework code:
> 14:31:54,306 | WARN  | tenerContainer-1 | AbstractMessageListenerContainer  694 | b120
| Execution of JMS message listener failed, and no ErrorHandler has been set.
> java.lang.NullPointerException
> 	at org.apache.felix.framework.resolver.ResolverImpl.permutateIfNeeded(ResolverImpl.java:1156)
> 	at org.apache.felix.framework.resolver.ResolverImpl.checkPackageSpaceConsistency(ResolverImpl.java:1085)
> 	at org.apache.felix.framework.resolver.ResolverImpl.resolve(ResolverImpl.java:171)
> 	at org.apache.felix.framework.Felix$FelixResolver.resolve(Felix.java:4103)
> 	at org.apache.felix.framework.ModuleImpl.searchDynamicImports(ModuleImpl.java:1412)
> 	at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:734)
> 	at org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:71)
> 	at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1768)
> 	at java.lang.ClassLoader.loadClass(ClassLoader.java:248)[:1.6.0_20]
> 	at java.lang.Class.forName0(Native Method)[:1.6.0_20]
> 	at java.lang.Class.forName(Class.java:247)[:1.6.0_20]
> 	at org.apache.activemq.util.ClassLoadingAwareObjectInputStream.load(ClassLoadingAwareObjectInputStream.java:63)
> 	at org.apache.activemq.util.ClassLoadingAwareObjectInputStream.resolveClass(ClassLoadingAwareObjectInputStream.java:37)
> 	at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1575)[:1.6.0_20]
> 	at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)[:1.6.0_20]
> 	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732)[:1.6.0_20]
> 	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)[:1.6.0_20]
> 	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)[:1.6.0_20]
> 	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)[:1.6.0_20]
> 	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)[:1.6.0_20]
> 	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)[:1.6.0_20]
> 	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)[:1.6.0_20]
> 	at java.util.ArrayList.readObject(ArrayList.java:593)[:1.6.0_20]
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.6.0_20]
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)[:1.6.0_20]
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_20]
> 	at java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_20]
> 	at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)[:1.6.0_20]
> 	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849)[:1.6.0_20]
> 	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)[:1.6.0_20]
> 	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)[:1.6.0_20]
> 	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)[:1.6.0_20]
> 	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)[:1.6.0_20]
> 	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)[:1.6.0_20]
> 	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)[:1.6.0_20]
> 	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)[:1.6.0_20]
> 	at org.apache.activemq.command.ActiveMQObjectMessage.getObject(ActiveMQObjectMessage.java:184)[103:org.apache.activemq.activemq-core:5.5.0]
> 	at org.springframework.jms.support.converter.SimpleMessageConverter.extractSerializableFromMessage(SimpleMessageConverter.java:215)[120:org.springframework.jms:3.0.5.RELEASE]
> 	at org.springframework.jms.support.converter.SimpleMessageConverter.fromMessage(SimpleMessageConverter.java:103)[120:org.springframework.jms:3.0.5.RELEASE]
> 	at org.springframework.jms.listener.adapter.MessageListenerAdapter.extractMessage(MessageListenerAdapter.java:407)[120:org.springframework.jms:3.0.5.RELEASE]
> 	at org.springframework.jms.listener.adapter.MessageListenerAdapter.onMessage(MessageListenerAdapter.java:345)[120:org.springframework.jms:3.0.5.RELEASE]
> 	at org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:535)[120:org.springframework.jms:3.0.5.RELEASE]
> 	at org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:495)[120:org.springframework.jms:3.0.5.RELEASE]
> 	at org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:467)[120:org.springframework.jms:3.0.5.RELEASE]
> 	at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:325)[120:org.springframework.jms:3.0.5.RELEASE]
> 	at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:263)[120:org.springframework.jms:3.0.5.RELEASE]
> 	at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1058)[120:org.springframework.jms:3.0.5.RELEASE]
> 	at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1050)[120:org.springframework.jms:3.0.5.RELEASE]
> 	at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:947)[120:org.springframework.jms:3.0.5.RELEASE]
> 	at java.lang.Thread.run(Thread.java:619)[:1.6.0_20]
> I guess there is nothing I can do except downgrading to karaf 2.2.0? Any other ideas?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message