There have been a couple of discussions about how to establish dependencies
between deployment units (EARs, JARs, SARs, etc.)  But how can you make sure
that a bean is not deployed until another has been?

Environment: JBoss 3.2.0beta2, Sun JDK 1.4.1_01, WinXP Pro, Oracle 9i

Basically, we have an MDB that listens on a JMS queue (via JVMServerILService)
and it calls a stateless session bean that performs some business operations.
In the case where JBoss was shutdown improperly, there are still messages on
the queue that are persisted in the JMS_MESSAGES table (we're using the JDBC2
PersistenceManager).  When JBoss starts up, the undelivered messages are sent,
triggering the MDB, but the dependent SLSB is not yet ready!  Is there a way to
reorder this sequence of events or is it a bug?  I've attached a stacktrace.

Thanks.

--
Chris Bonham
President/CEO
Third Eye Consulting, Inc.
[EMAIL PROTECTED]
http://www.thirdeyeconsulting.com
317.823.3686
317.823.0353 (FAX)


11:30:31,614 INFO  [StatelessSessionContainer] Starting
11:30:31,644 INFO  [StatelessSessionInstancePool] Starting
11:30:31,644 INFO  [StatelessSessionInstancePool] Started
11:30:31,644 INFO  [StatelessSessionContainer] Started
11:30:31,644 INFO  [StatelessSessionContainer] Starting
11:30:31,704 INFO  [StatelessSessionInstancePool] Starting
11:30:31,704 INFO  [StatelessSessionInstancePool] Started
11:30:31,704 INFO  [StatelessSessionContainer] Started
11:30:31,704 INFO  [StatelessSessionContainer] Starting
11:30:31,744 INFO  [StatelessSessionInstancePool] Starting
11:30:31,744 INFO  [StatelessSessionInstancePool] Started
11:30:31,744 INFO  [StatelessSessionContainer] Started
11:30:31,744 INFO  [EntityContainer] Starting
11:30:31,784 INFO  [EntityInstancePool] Starting
11:30:31,784 INFO  [EntityInstancePool] Started
11:30:31,784 INFO  [EntityContainer] Started
11:30:31,784 INFO  [EntityContainer] Starting
11:30:31,815 INFO  [EntityInstancePool] Starting
11:30:31,815 INFO  [EntityInstancePool] Started
11:30:31,815 INFO  [EntityContainer] Started
11:30:31,815 INFO  [EntityContainer] Starting
11:30:31,845 INFO  [EntityInstancePool] Starting
11:30:31,845 INFO  [EntityInstancePool] Started
11:30:31,845 INFO  [EntityContainer] Started
11:30:31,845 INFO  [EntityContainer] Starting
11:30:31,885 INFO  [EntityInstancePool] Starting
11:30:31,885 INFO  [EntityInstancePool] Started
11:30:31,885 INFO  [EntityContainer] Started
11:30:31,885 INFO  [MessageDrivenContainer] Starting
11:30:31,895 INFO  [JMSContainerInvoker] Starting
11:30:31,895 INFO  [DLQHandler] Creating
11:30:31,895 INFO  [DLQHandler] Created
11:30:31,925 INFO  [DLQHandler] Starting
11:30:31,925 INFO  [DLQHandler] Started
11:30:31,925 INFO  [JMSContainerInvoker] Started
11:30:31,925 INFO  [MessageDrivenInstancePool] Starting
11:30:31,925 INFO  [MessageDrivenInstancePool] Started
11:30:31,925 INFO  [MessageDrivenContainer] Started
11:30:31,925 INFO  [EntityContainer] Starting
11:30:32,045 INFO  [EntityInstancePool] Starting
11:30:32,045 INFO  [EntityInstancePool] Started
11:30:32,075 INFO  [EntityContainer] Started
11:30:32,095 INFO  [StatelessSessionContainer] Starting
11:30:32,285 INFO  [StatelessSessionInstancePool] Starting
11:30:32,285 INFO  [StatelessSessionInstancePool] Started
11:30:32,315 INFO  [StatelessSessionContainer] Started
11:30:32,335 INFO  [StatelessSessionContainer] Starting
11:30:32,405 ERROR [LogInterceptor] TransactionRolledbackLocalException,
causedBy:
java.lang.NullPointerException
      at
org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.createBeanClassInstance(JDBCStoreManager.java:513)
      at
org.jboss.ejb.plugins.CMPPersistenceManager.createBeanClassInstance(CMPPersistenceManager.java:165)
      at
org.jboss.resource.connectionmanager.CachedConnectionInterceptor.createBeanClassInstance(CachedConnectionInterceptor.java:251)
      at
org.jboss.ejb.EntityContainer.createBeanClassInstance(EntityContainer.java:272)
      at
org.jboss.ejb.plugins.AbstractInstancePool.get(AbstractInstancePool.java
:197)
      at
org.jboss.ejb.plugins.EntityMultiInstanceInterceptor.invokeHome(EntityMultiInstanceInterceptor.java:64)
      at
org.jboss.ejb.plugins.EntityLockInterceptor.invokeHome(EntityLockInterceptor.java:79)
      at
org.jboss.ejb.plugins.EntityCreationInterceptor.invokeHome(EntityCreationInterceptor.java:44)
      at
org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:112)
      at
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:237)
      at
org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT.java:71)
      at
org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityInterceptor.java:105)
      at
org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:131)
      at
org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invokeHome(ProxyFactoryFinderInterceptor.java:125)
      at
org.jboss.ejb.EntityContainer.invokeHome(EntityContainer.java:475)
      at
org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invokeHome(BaseLocalProxyFactory.java:271)
      at
org.jboss.ejb.plugins.local.LocalHomeProxy.invoke(LocalHomeProxy.java:110)
      at $Proxy121.findByPrimaryKey(Unknown Source)
      at NewsScraperHelperBean.setupRobot(NewsScraperHelperBean.java:109)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at
org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:606)
      at
org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:186)
      at
org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:77)
      at
org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:108)
      at
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:237)
      at
org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:101)
      at
org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:130)
      at
org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:206)
      at
org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:154)
      at
org.jboss.ejb.StatelessSessionContainer.invoke(StatelessSessionContainer.java:303)
      at
org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:351)
      at
org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:81)
      at $Proxy163.setupRobot(Unknown Source)
      at NewsScraperBean.processNewsSource(NewsScraperBean.java:102)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at
org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:606)
      at
org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:186)
      at
org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:77)
      at
org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:108)
      at
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:210)
      at
org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:101)
      at
org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:130)
      at
org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:206)
      at
org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:154)
      at
org.jboss.ejb.StatelessSessionContainer.invoke(StatelessSessionContainer.java:303)
      at
org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:351)
      at
org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:81)
      at $Proxy162.processNewsSource(Unknown Source)
      at NewsSourceProcessorBean.onMessage(NewsSourceProcessorBean.java:90)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at
org.jboss.ejb.MessageDrivenContainer$ContainerInterceptor.invoke(MessageDrivenContainer.java:394)
      at
org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:186)
      at
org.jboss.ejb.plugins.MessageDrivenInstanceInterceptor.invoke(MessageDrivenInstanceInterceptor.java:88)
      at
org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:108)
      at
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:210)
      at
org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:101)
      at
org.jboss.ejb.plugins.RunAsSecurityInterceptor.invoke(RunAsSecurityInterceptor.java:100)
      at
org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:206)
      at
org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:154)
      at
org.jboss.ejb.MessageDrivenContainer.invoke(MessageDrivenContainer.java:311)
      at
org.jboss.ejb.plugins.jms.JMSContainerInvoker.invoke(JMSContainerInvoker.java:697)
      at
org.jboss.ejb.plugins.jms.JMSContainerInvoker$MessageListenerImpl.onMessage(JMSContainerInvoker.java:985)
      at
org.jboss.jms.asf.StdServerSession.onMessage(StdServerSession.java:241)
      at
org.jboss.mq.SpyMessageConsumer.sessionConsumerProcessMessage(SpyMessageConsumer.java:643)
      at
org.jboss.mq.SpyMessageConsumer.addMessage(SpyMessageConsumer.java:457)
      at org.jboss.mq.SpySession.run(SpySession.java:293)
      at
org.jboss.jms.asf.StdServerSession.run(StdServerSession.java:177)
      at
EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:642)
      at java.lang.Thread.run(Thread.java:536)


-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to