0 Replies Latest reply on May 17, 2002 11:23 AM by Wei

    Message Bean Error.

    Wei Newbie

      I've problem when Message-driven-bean listen to event. Anyone can help. I'm using JBoss 2.4.4 with Tomcat 4.0.1

      [11:15:52,688,JMSContainerInvoker] processing message: TextMessage@Hello from Wei.
      [11:15:52,688,TxInterceptorCMT] Begin runWithTransactions
      [11:15:52,688,TxInterceptorCMT] Current transaction in MI is null
      [11:15:52,688,TxInterceptorCMT] Current thread transaction is null
      [11:15:52,688,TxInterceptorCMT] Current method public abstract void javax.jms.MessageListener.onMessage(javax.jms.Message)
      [11:15:52,688,TxInterceptorCMT] TX_NOT_SUPPORTED for onMessage
      [11:15:52,688,TxInterceptorCMT] TX_NOT_SUPPORTED begin
      [11:15:52,688,MessageDrivenInstancePool] Get instance org.jboss.ejb.plugins.MessageDrivenInstancePool@2d603#true#class com.wei.system.message.WxMessageSubscriber
      [11:15:52,698,TxInterceptorCMT] TX_NOT_SUPPORTED end
      [11:15:52,698,JMSContainerInvoker] Exception in JMSCI message listener
      java.lang.NoSuchMethodException
      at java.lang.Class.getMethod0(Native Method)
      at java.lang.Class.getMethod(Class.java:888)
      at org.jboss.ejb.MessageDrivenEnterpriseContext.(MessageDrivenEnterpriseContext.java:59)
      at org.jboss.ejb.plugins.MessageDrivenInstancePool.create(MessageDrivenInstancePool.java:58)
      at org.jboss.ejb.plugins.AbstractInstancePool.add(AbstractInstancePool.java:153)
      at org.jboss.ejb.plugins.AbstractInstancePool.internalGet(AbstractInstancePool.java:216)
      at org.jboss.ejb.plugins.AbstractInstancePool.get(AbstractInstancePool.java:191)
      at org.jboss.ejb.plugins.MessageDrivenInstanceInterceptor.invoke(MessageDrivenInstanceInterceptor.java:73)
      at org.jboss.ejb.plugins.TxInterceptorCMT.invokeNext(TxInterceptorCMT.java:138)
      at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:277)
      at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:100)
      at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:127)
      at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:170)
      at org.jboss.ejb.MessageDrivenContainer.invoke(MessageDrivenContainer.java:281)
      at org.jboss.ejb.plugins.jms.JMSContainerInvoker.invoke(JMSContainerInvoker.java:584)
      at org.jboss.ejb.plugins.jms.JMSContainerInvoker$MessageListenerImpl.onMessage(JMSContainerInvoker.java:930)
      at org.jboss.jms.asf.StdServerSession.onMessage(StdServerSession.java:233)
      at org.jboss.mq.SpyMessageConsumer.sessionConsumerProcessMessage(SpyMessageConsumer.java:565)
      at org.jboss.mq.SpyMessageConsumer.addMessage(SpyMessageConsumer.java:376)
      at org.jboss.mq.SpySession.run(SpySession.java:248)
      at org.jboss.jms.asf.StdServerSession.run(StdServerSession.java:172)
      at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:725)
      at java.lang.Thread.run(Thread.java:484)

      I've put the following codes in ejb-jar.xml
      <message-driven>
      <ejb-name>WxMessageSubscriberEJB</ejb-name>
      <ejb-lass>com.wei.system.message.WxMessageSubscriber</ejb-lass>
      <message-selector></message-selector>
      <transaction-type>Container</transaction-type>
      <message-driven-destination>
      <destination-type>javax.jms.Topic</destination-type>
      <subscription-durability>NonDurable</subscription-durability>
      </message-driven-destination>
      </message-driven>

      <assembly-descriptor>
      <container-transaction>

      <ejb-name>WxMessageSubscriberEJB</ejb-name>
      <method-name>*</method-name>

      <trans-attribute>NotSupported</trans-attribute>
      </container-transaction>
      </assembly-descriptor>