@MessageDriven(activationConfig = {
        @ActivationConfigProperty(propertyName = "destination",
propertyValue = "test/ejb/AnswerQueue")
})
public class CachedInfoMessageHandlerBean implements MessageListener


*Romain Manni-Bucau*
*Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
*Blog: **http://rmannibucau.wordpress.com/*<http://rmannibucau.wordpress.com/>
*LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
*Github: https://github.com/rmannibucau*



2013/4/23 Howard W. Smith, Jr. <smithh032...@gmail.com>

> Yes, I used the TomEE 'simple MDB' example code to develop my MDB code, but
> honestly, I 'only' have 'producer' queues and rely on MDB's onMessage() to
> process the message. ATM, I am 'not' using 'consumer' queues at all.
>
>
>
>
> On Tue, Apr 23, 2013 at 4:27 PM, Howard W. Smith, Jr. <
> smithh032...@gmail.com> wrote:
>
> > MessageListener invokes just fine in my app. Two differences between your
> > MDB and my MDB.
> >
> > 1. I added an empty constructor that accepts no arguments. For some
> > weeks/months now, one MDB did 'not' have an empty constructor, while the
> > other MDB had empty constructor.
> >
> > 2. I don't @Override the onMessage(...)
> >
> > Below is one of my MDBs, and they both are pretty much defined this way.
> >
> > @MessageDriven
> > public class EmailMessageDrivenBean implements MessageListener {
> >
> >     private final Boolean debug = true;
> >
> >     private final Logger logger = LoggerFactory.getLogger(getClass());
> >
> >     @Inject
> >     private ApplicationScopeBean applicationScopeBean;
> >
> >     /*
> >      * 2013-03-19 DO NOT USE @EJB AddEmailRequest; use @Inject, since NO
> > DEADLOCK
> >      *            ONLY USE @EJB after testing, and if there are NO
> DEADLOCK
> >      */
> >     @EJB
> >     private AddEmailRequest addEmailRequestBean;
> >
> >     public EmailMessageDrivenBean() {
> >         /*
> >          * since MDB is pooled, do NOT use to initialize values!!!
> >          */
> >     }
> >
> >     public void onMessage(Message message) {
> >
> >
> >
> >
> >
> > On Tue, Apr 23, 2013 at 1:08 PM, TomeeUser <panve...@gmail.com> wrote:
> >
> >>
> >> I see all messages are send to right queue ( in activeMQ webconsole )
>  but
> >> MessageListner is not being invoked... I put log statements nothing
> >> appears
> >> in log...and same client and app works just fine in JBoss...
> >>
> >> I would really hate to switch back to JBoss as love Tomee for its
> >> simplicity.
> >>
> >> Below are the logs:
> >>
> >>
> >>
> >> 20130423 11:43:03  INFO   (HostConfig)
> >> org.apache.catalina.startup.HostConfig [deployWAR]:Deploying web
> >> application
> >> archive C:\AppServers\tomee\webapps\TomEEApp.war
> >> 20130423 11:43:03  INFO   (root)
> >> org.apache.tomee.catalina.TomcatWebAppBuilder
> >> [init]:------------------------- localhost -> /TomEEApp
> >> 20130423 11:43:03  INFO   (root) org.apache.openejb.util.JarExtractor
> >> [extract]:Extracting jar: C:\AppServers\tomee\webapps\TomEEApp.war
> >> 20130423 11:43:03  INFO   (root) org.apache.openejb.util.JarExtractor
> >> [extract]:Extracted path: C:\AppServers\tomee\webapps\TomEEApp
> >> 20130423 11:43:03  INFO   (root)
> >>
> >>
> org.apache.openejb.config.ConfigurationFactory[configureApplication]:Configuring
> >> enterprise application: C:\AppServers\tomee\webapps\TomEEApp
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.config.InitEjbDeployments [deploy]:Auto-deploying ejb
> >> CalculatorBean: EjbDeployment(deployment-id=CalculatorBean)
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.config.InitEjbDeployments [deploy]:Auto-deploying ejb
> >> CachedInfoMessageHandlerBean:
> >> EjbDeployment(deployment-id=CachedInfoMessageHandlerBean)
> >> 20130423 11:43:04  INFO   (root) org.apache.openejb.config.AutoConfig
> >> [resolveDestinationLinks]:Auto-configuring a message driven bean
> >> CachedInfoMessageHandlerBean destination CachedInfoMessageHandlerBean to
> >> be
> >> destinationType javax.jms.Queue
> >> 20130423 11:43:04  INFO   (root)
> >>
> >>
> org.apache.openejb.config.ConfigurationFactory[configureService]:Configuring
> >> Service(id=Default JMS Connection Factory, type=Resource,
> >> provider-id=Default JMS Connection Factory)
> >> 20130423 11:43:04  INFO   (root) org.apache.openejb.config.AutoConfig
> >> [logAutoCreateResource]:Auto-creating a Resource with id 'Default JMS
> >> Connection Factory'of type 'javax.jms.ConnectionFactory for
> >> 'CalculatorBean'.
> >> 20130423 11:43:04  INFO   (root)
> >>
> >>
> org.apache.openejb.config.ConfigurationFactory[configureService]:Configuring
> >> Service(id=Default JMS Resource Adapter, type=Resource,
> >> provider-id=Default
> >> JMS Resource Adapter)
> >> 20130423 11:43:04  INFO   (root)
> >>
> >>
> org.apache.openejb.config.ConfigurationFactory[configureService]:Configuring
> >> Service(id=Default Unmanaged JDBC Database, type=Resource,
> >> provider-id=Default Unmanaged JDBC Database)
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.assembler.classic.Assembler[createRecipe]:Creating
> >> Resource(id=Default Unmanaged JDBC Database)
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.assembler.classic.Assembler[createRecipe]:Creating
> >> Resource(id=Default JMS Resource Adapter)
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.resource.activemq.ActiveMQ5Factory
> >> [createBroker]:ActiveMQ5Factory creating broker
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.resource.activemq.ActiveMQ5Factory
> [createBroker]:Using
> >> ActiveMQ startup timeout of 10000ms
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.resource.activemq.ActiveMQ5Factory$1 [run]:Starting
> >> ActiveMQ BrokerService
> >> 20130423 11:43:04  INFO   (BrokerService)
> >> org.apache.activemq.broker.BrokerService
> [doStartPersistenceAdapter]:Using
> >> Persistence Adapter: MemoryPersistenceAdapter
> >> 20130423 11:43:04  INFO   (BrokerService)
> >> org.apache.activemq.broker.BrokerService [doStartBroker]:Apache ActiveMQ
> >> 5.7.0 (localhost, ID:CND1222QY1-4861-1366731730439-0:2) is starting
> >> 20130423 11:43:04  INFO   (TransportServerThreadSupport)
> >> org.apache.activemq.transport.TransportServerThreadSupport
> >> [doStart]:Listening for connections at: tcp://localhost:61616
> >> 20130423 11:43:04  INFO   (TransportConnector)
> >> org.apache.activemq.broker.TransportConnector [start]:Connector
> >> tcp://localhost:61616 Started
> >> 20130423 11:43:04  INFO   (BrokerService)
> >> org.apache.activemq.broker.BrokerService [doStartBroker]:Apache ActiveMQ
> >> 5.7.0 (localhost, ID:CND1222QY1-4861-1366731730439-0:2) started
> >> 20130423 11:43:04  INFO   (BrokerService)
> >> org.apache.activemq.broker.BrokerService [doStartBroker]:For help or
> more
> >> information please see: http://activemq.apache.org
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.resource.activemq.ActiveMQ5Factory$1 [run]:Starting
> >> ActiveMQ checkpoint
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.resource.activemq.ActiveMQ5Factory
> >> [createBroker]:ActiveMQ broker started
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.assembler.classic.Assembler[createRecipe]:Creating
> >> Resource(id=Default JMS Connection Factory)
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.assembler.classic.Assembler[createResource]:Creating
> >> ConnectionManager for Resource(id=Default JMS Connection Factory)
> >> 20130423 11:43:04  INFO   (GenericConnectionManager)
> >>
> >>
> org.apache.geronimo.connector.outbound.GenericConnectionManager$InterceptorsImpl
> >> [<init>]:No runtime TransactionSupport
> >> 20130423 11:43:04  INFO   (root) org.apache.openejb.config.AutoConfig
> >> [processResourceRef]:Auto-linking resource-ref
> >>
> >>
> 'java:comp/env/test.ejbs.TomEE.beans.CachedInfoMessageHandlerBean/connectionFactory'
> >> in bean CalculatorBean to Resource(id=Default JMS Connection Factory)
> >> 20130423 11:43:04  INFO   (root)
> >>
> >>
> org.apache.openejb.config.ConfigurationFactory[configureService]:Configuring
> >> Service(id=AnswerQueue, type=Resource, provider-id=Default Queue)
> >> 20130423 11:43:04  INFO   (root) org.apache.openejb.config.AutoConfig
> >> [logAutoCreateResource]:Auto-creating a Resource with id 'AnswerQueue'
> of
> >> type 'javax.jms.Queue for 'CalculatorBean'.
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.assembler.classic.Assembler[createRecipe]:Creating
> >> Resource(id=AnswerQueue)
> >> 20130423 11:43:04  INFO   (root) org.apache.openejb.config.AutoConfig
> >> [processResourceEnvRef]:Auto-linking resource-env-ref
> >> 'java:comp/env/AnswerQueue' in bean CalculatorBean to
> >> Resource(id=AnswerQueue)
> >> 20130423 11:43:04  INFO   (root)
> >>
> >>
> org.apache.openejb.config.ConfigurationFactory[configureService]:Configuring
> >> Service(id=Default MDB Container, type=Container, provider-id=Default
> MDB
> >> Container)
> >> 20130423 11:43:04  INFO   (root) org.apache.openejb.config.AutoConfig
> >> [createContainer]:Auto-creating a container for bean
> >> CachedInfoMessageHandlerBean: Container(type=MESSAGE, id=Default MDB
> >> Container)
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.assembler.classic.Assembler[createRecipe]:Creating
> >> Container(id=Default MDB Container)
> >> 20130423 11:43:04  INFO   (root) org.apache.openejb.config.AutoConfig
> >> [processResourceRef]:Auto-linking resource-ref
> >>
> >>
> 'java:comp/env/test.ejbs.TomEE.beans.CachedInfoMessageHandlerBean/connectionFactory'
> >> in bean CachedInfoMessageHandlerBean to Resource(id=Default JMS
> Connection
> >> Factory)
> >> 20130423 11:43:04  INFO   (root) org.apache.openejb.config.AutoConfig
> >> [processResourceEnvRef]:Auto-linking resource-env-ref
> >> 'java:comp/env/AnswerQueue' in bean CachedInfoMessageHandlerBean to
> >> Resource(id=AnswerQueue)
> >> 20130423 11:43:04  INFO   (root)
> >>
> >>
> org.apache.openejb.config.ConfigurationFactory[configureService]:Configuring
> >> Service(id=CachedInfoMessageHandlerBean, type=Resource,
> >> provider-id=Default
> >> Queue)
> >> 20130423 11:43:04  INFO   (root) org.apache.openejb.config.AutoConfig
> >> [logAutoCreateResource]:Auto-creating a Resource with id
> >> 'CachedInfoMessageHandlerBean' of  type 'javax.jms.Queue for
> >> 'CachedInfoMessageHandlerBean'.
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.assembler.classic.Assembler[createRecipe]:Creating
> >> Resource(id=CachedInfoMessageHandlerBean)
> >> 20130423 11:43:04  INFO   (root)
> org.apache.openejb.config.AppInfoBuilder
> >> [build]:Enterprise application "C:\AppServers\tomee\webapps\TomEEApp"
> >> loaded.
> >> 20130423 11:43:04  INFO   (root)
> >>
> >>
> org.apache.openejb.assembler.classic.Assembler[createApplication]:Assembling
> >> app: C:\AppServers\tomee\webapps\TomEEApp
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.assembler.classic.JndiBuilder
> >> [bind]:Jndi(name=CalculatorBeanLocalBean) -->
> >> Ejb(deployment-id=CalculatorBean)
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.assembler.classic.JndiBuilder
> >>
> >>
> [bind]:Jndi(name=global/TomEEApp/CalculatorBean!test.ejbs.TomEE.beans.CalculatorBean)
> >> --> Ejb(deployment-id=CalculatorBean)
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.assembler.classic.JndiBuilder
> >> [bind]:Jndi(name=CalculatorBeanRemote) -->
> >> Ejb(deployment-id=CalculatorBean)
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.assembler.classic.JndiBuilder
> >>
> >>
> [bind]:Jndi(name=global/TomEEApp/CalculatorBean!test.ejbs.TomEE.headers.CalculatorRemote)
> >> --> Ejb(deployment-id=CalculatorBean)
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.assembler.classic.JndiBuilder
> >>
> >>
> [bind]:Jndi(name=global/TomEEApp/CalculatorBean!test.ejbs.TomEE.headers.CalculatorLocal)
> >> --> Ejb(deployment-id=CalculatorBean)
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.assembler.classic.JndiBuilder
> >> [bind]:Jndi(name=global/TomEEApp/CalculatorBean) -->
> >> Ejb(deployment-id=CalculatorBean)
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.assembler.classic.JndiBuilder
> >> [bind]:Jndi(name=CachedInfoMessageHandlerBean) -->
> >> Ejb(deployment-id=CachedInfoMessageHandlerBean)
> >> 20130423 11:43:04  INFO   (root) org.apache.openejb.cdi.CdiBuilder
> >> [initSingleton]:Existing thread singleton service in SystemInstance():
> >> org.apache.openejb.cdi.ThreadSingletonServiceImpl@15c97a42013042311
> :43:04
> >> INFO   (root) org.apache.openejb.cdi.OpenEJBLifecycle
> >> [startApplication]:OpenWebBeans Container is starting...
> >> 20130423 11:43:04  INFO   (PluginLoader)
> >> org.apache.webbeans.plugins.PluginLoader [startUp]:Adding
> >> OpenWebBeansPlugin
> >> : [CdiPlugin]
> >> 20130423 11:43:04  INFO   (PluginLoader)
> >> org.apache.webbeans.plugins.PluginLoader [startUp]:Adding
> >> OpenWebBeansPlugin
> >> : [OpenWebBeansJsfPlugin]
> >> 20130423 11:43:04  INFO   (root) org.apache.openejb.cdi.BeansDeployer
> >> [validateInjectionPoints]:All injection points are validated
> successfully.
> >> 20130423 11:43:04  INFO   (root) org.apache.openejb.cdi.OpenEJBLifecycle
> >> [startApplication]:OpenWebBeans Container has started, it took 16 ms.
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.assembler.classic.Assembler[startEjbs]:Created
> >> Ejb(deployment-id=CalculatorBean, ejb-name=CalculatorBean,
> >> container=Default
> >> Stateless Container)
> >> 20130423 11:43:04  INFO   (ActiveMQEndpointWorker)
> >> org.apache.activemq.ra.ActiveMQEndpointWorker [start]:Starting20130423
> >> 11:43:04  INFO   (root)
> >> org.apache.openejb.assembler.classic.Assembler[startEjbs]:Created
> >> Ejb(deployment-id=CachedInfoMessageHandlerBean,
> >> ejb-name=CachedInfoMessageHandlerBean, container=Default MDB Container)
> >> 20130423 11:43:04  INFO   (WorkerContext)
> >> org.apache.geronimo.connector.work.WorkerContext [run]:Removing
> >> non-required
> >> WorkContextHandler with no context:
> >> org.apache.geronimo.connector.work.TransactionContextHandler@7ed6f6
> >> 20130423 11:43:04  INFO   (WorkerContext)
> >> org.apache.geronimo.connector.work.WorkerContext [run]:Removing
> >> non-required
> >> WorkContextHandler with no context:
> >> org.apache.openejb.core.security.SecurityContextHandler@14949e620130423
> >> 11:43:04  INFO   (root)
> >> org.apache.openejb.assembler.classic.Assembler[startEjbs]:Started
> >> Ejb(deployment-id=CalculatorBean, ejb-name=CalculatorBean,
> >> container=Default
> >> Stateless Container)
> >> 20130423 11:43:04  INFO   (WorkerContext)
> >> org.apache.geronimo.connector.work.WorkerContext [run]:Removing
> >> non-required
> >> WorkContextHandler with no context:
> >> org.apache.geronimo.connector.work.HintsContextHandler@1c88d9c
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.openejb.assembler.classic.Assembler[startEjbs]:Started
> >> Ejb(deployment-id=CachedInfoMessageHandlerBean,
> >> ejb-name=CachedInfoMessageHandlerBean, container=Default MDB Container)
> >> 20130423 11:43:04  INFO   (ActiveMQEndpointWorker)
> >> org.apache.activemq.ra.ActiveMQEndpointWorker$1 [run]:Establishing
> >> connection to broker [vm://localhost?waitForStart=20000&async=true]
> >> 20130423 11:43:04  INFO   (root)
> >> org.apache.tomee.catalina.TomcatWebAppBuilder [deployWebApps]:using
> >> context
> >> file C:\AppServers\tomee\webapps\TomEEApp\META-INF\context.xml
> >> 20130423 11:43:04  INFO   (root)
> >>
> org.apache.openejb.assembler.classic.Assembler[createApplication]:Deployed
> >> Application(path=C:\AppServers\tomee\webapps\TomEEApp)
> >> 20130423 11:43:04  INFO   (TransportConnector)
> >> org.apache.activemq.broker.TransportConnector [start]:Connector
> >> vm://localhost Started
> >> 20130423 11:43:04  INFO   (ActiveMQEndpointWorker)
> >> org.apache.activemq.ra.ActiveMQEndpointWorker$1 [run]:Successfully
> >> established connection to broker
> >> [vm://localhost?waitForStart=20000&async=true]
> >>
> >>
> >>
> >> --
> >> View this message in context:
> >>
> http://openejb.979440.n4.nabble.com/Can-not-connect-to-Message-Bean-from-remote-client-Null-pointer-tp4662203p4662407.html
> >> Sent from the OpenEJB User mailing list archive at Nabble.com.
> >>
> >
> >
>

Reply via email to