[weld-issues] [JBoss JIRA] Updated: (WELD-444) onMessage of MDB causes NullPointerException

Pete Muir (JIRA) jira-events at lists.jboss.org
Fri Feb 19 08:11:10 EST 2010


     [ https://jira.jboss.org/jira/browse/WELD-444?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Pete Muir updated WELD-444:
---------------------------

    JBoss Forum Reference: http://seamframework.org/Community/MoreMessageDrivenBeanIssues


> onMessage of MDB causes NullPointerException 
> ---------------------------------------------
>
>                 Key: WELD-444
>                 URL: https://jira.jboss.org/jira/browse/WELD-444
>             Project: Weld
>          Issue Type: Bug
>          Components: Class Beans (Managed and Session)
>    Affects Versions: 1.0.1.CR2
>         Environment: Glassfish v3 with weld-integration 3.0.1b05 (self-patched to fix https://glassfish.dev.java.net/issues/show_bug.cgi?id=11435)
>            Reporter: John Leed
>             Fix For: 1.0.1.GA
>
>
> Unlike with Weld 1.0.0 SP4, I can now deploy my EJB module that has an MDB. However, when onMessage gets called I get the following:
> SEVERE: MDB00050: Message-driven bean [Core_Framework:EmailConsumerBean]: Exception in creating message-driven ejb : [java.lang.NullPointerException]
> SEVERE: java.lang.NullPointerException
> java.lang.NullPointerException
>         at org.jboss.weld.manager.BeanManagerImpl.createInjectionTarget(BeanManagerImpl.java:1132)
>         at org.glassfish.weld.services.JCDIServiceImpl.injectEJBInstance(JCDIServiceImpl.java:138)
>         at com.sun.ejb.containers.BaseContainer.injectEjbInstance(BaseContainer.java:1603)
>         at com.sun.ejb.containers.MessageBeanContainer.createMessageDrivenEJB(MessageBeanContainer.java:697)
>         at com.sun.ejb.containers.MessageBeanContainer.access$100(MessageBeanContainer.java:95)
>         at com.sun.ejb.containers.MessageBeanContainer$MessageBeanContextFactory.create(MessageBeanContainer.java:478)
>         at com.sun.ejb.containers.util.pool.NonBlockingPool.getObject(NonBlockingPool.java:200)
>         at com.sun.ejb.containers.MessageBeanContainer._getContext(MessageBeanContainer.java:542)
>         at com.sun.ejb.containers.BaseContainer.getContext(BaseContainer.java:2418)
>         at com.sun.ejb.containers.MessageBeanContainer.beforeMessageDelivery(MessageBeanContainer.java:979)
>         at com.sun.ejb.containers.MessageBeanListenerImpl.beforeMessageDelivery(MessageBeanListenerImpl.java:72)
>         at com.sun.enterprise.connectors.inbound.MessageEndpointInvocationHandler.invoke(MessageEndpointInvocationHandler.java:134)
>         at $Proxy521.beforeDelivery(Unknown Source)
>         at com.sun.messaging.jms.ra.OnMessageRunner.run(OnMessageRunner.java:245)
>         at com.sun.enterprise.connectors.work.OneWork.doWork(OneWork.java:92)
>         at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.performWork(ThreadPoolImpl.java:492)
>         at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:528)
> SEVERE: MQRA:OMR:run:Caught Exception from onMessage():Redelivering:Core_Framework:EmailConsumerBean: Message-driven bean invocation closed by container
> SEVERE: MDB00042: [Core_Framework:EmailConsumerBean]: No invocation for message []
> SEVERE: MDB00050: Message-driven bean [Core_Framework:EmailConsumerBean]: Exception in creating message-driven ejb : [java.lang.NullPointerException]
> SEVERE: java.lang.NullPointerException
> java.lang.NullPointerException
>         at org.jboss.weld.manager.BeanManagerImpl.createInjectionTarget(BeanManagerImpl.java:1132)
>         at org.glassfish.weld.services.JCDIServiceImpl.injectEJBInstance(JCDIServiceImpl.java:138)
>         at com.sun.ejb.containers.BaseContainer.injectEjbInstance(BaseContainer.java:1603)
>         at com.sun.ejb.containers.MessageBeanContainer.createMessageDrivenEJB(MessageBeanContainer.java:697)
>         at com.sun.ejb.containers.MessageBeanContainer.access$100(MessageBeanContainer.java:95)
>         at com.sun.ejb.containers.MessageBeanContainer$MessageBeanContextFactory.create(MessageBeanContainer.java:478)
>         at com.sun.ejb.containers.util.pool.NonBlockingPool.getObject(NonBlockingPool.java:200)
>         at com.sun.ejb.containers.MessageBeanContainer._getContext(MessageBeanContainer.java:542)
>         at com.sun.ejb.containers.BaseContainer.getContext(BaseContainer.java:2418)
>         at com.sun.ejb.containers.MessageBeanContainer.beforeMessageDelivery(MessageBeanContainer.java:979)
>         at com.sun.ejb.containers.MessageBeanListenerImpl.beforeMessageDelivery(MessageBeanListenerImpl.java:72)
>         at com.sun.enterprise.connectors.inbound.MessageEndpointInvocationHandler.invoke(MessageEndpointInvocationHandler.java:134)
>         at $Proxy521.beforeDelivery(Unknown Source)
>         at com.sun.messaging.jms.ra.OnMessageRunner.run(OnMessageRunner.java:245)
>         at com.sun.enterprise.connectors.work.OneWork.doWork(OneWork.java:92)
>         at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.performWork(ThreadPoolImpl.java:492)
>         at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:528)
> SEVERE: MQRA:OMR:run:Caught Exception from onMessage():Redelivering:Core_Framework:EmailConsumerBean: Message-driven bean invocation closed by container
> SEVERE: MQRA:OMR:run:Exhausted redeliveryAttempts-msg=com.sun.messaging.jms.ra.DirectObjectPacket at 1656ed6
> SEVERE: MQRA:OMR:run:Exhausted redeliveryAttempts-spec=ActvationSpec configuration=
>         DestinationType                     =javax.jms.Queue
>         Destination                         =EmailQueue
>         MessageSelector                     =null
>         AcknowledgeMode                     =Auto-acknowledge
>         SubscriptionDurability              =NonDurable
>         useSharedSubscriptionInClusteredContainer=true
>         ClientId                            =null
>         SubscriptionName                    =null
>         EndpointPoolMaxSize                 =32
>         EndpointPoolSteadySize              =0
>         EndpointPoolResizeCount             =8
>         EndpointPoolResizeTimeout           =600
>         EndpointExceptionRedeliveryAttempts =1
>         EndpointExceptionRedeliveryInterval =500
>         SendUndeliverableMsgsToDMQ          =true
>         GroupName                           =null
>         RAUID                               =null
>         InClusteredContainer                =false
>         MdbName                             =null
>         UserName                            =null
>         EnableRADirect                      =true
>         EnableAPIDirect                      =false
>         AddressList (in effect)             =localhost:26703,localhost
>         options                                            =null
> SEVERE: MQRA:OMR:run:Message returned & marked for routing to the DMQ
> SEVERE: MQRA:OMR:run:omrId=0:Acked Undeliverable-Msg=com.sun.messaging.jms.ra.DirectObjectPacket at 1656ed6
> SEVERE: MDB00042: [Core_Framework:EmailConsumerBean]: No invocation for message []
> WARNING: [MDBContainer] Current thread done cleanup()... 
> If I remove the beans.xml, everything works fine.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the weld-issues mailing list