views:

1214

answers:

3

When I deploy my application on JBoss 5 the EJBs are created before the QueueService is started. Creation of Message Driven beans now fails miserably because the queues are not yet available:

17:11:29,151 INFO  [EJBContainer] STARTED EJB: .....
17:11:29,266 INFO  [JndiSessionRegistrarBase] Binding the following Entries in Global JNDI:
..
..
17:11:29,928 WARN  [JmsActivation] Failure in jms activation org.jboss.resource.adapter.jms.inflow.JmsActivationSpec@11694c ...
javax.naming.NameNotFoundException: ... not bound
    at org.jnp.server.NamingServer.getBinding(NamingServer.java:771)
    at org.jnp.server.NamingServer.getBinding(NamingServer.java:779)
    at org.jnp.server.NamingServer.getObject(NamingServer.java:785)
    at org.jnp.server.NamingServer.lookup(NamingServer.java:443)
    at org.jnp.server.NamingServer.lookup(NamingServer.java:399)
    at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:722)
    at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:682)
    at javax.naming.InitialContext.lookup(InitialContext.java:392)
    at org.jboss.util.naming.Util.lookup(Util.java:222)
    at org.jboss.resource.adapter.jms.inflow.JmsActivation.setupDestination(JmsActivation.java:464)
    at org.jboss.resource.adapter.jms.inflow.JmsActivation.setup(JmsActivation.java:352)
    at org.jboss.resource.adapter.jms.inflow.JmsActivation$SetupActivation.run(JmsActivation.java:729)
    at org.jboss.resource.work.WorkWrapper.execute(WorkWrapper.java:213)
    at org.jboss.util.threadpool.BasicTaskWrapper.run(BasicTaskWrapper.java:260)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:619)
17:11:30,027 INFO  [QueueService] Queue[/queue/....] started, fullSize=200000, pageSize=2000, downCacheSize=2000

How can the deploy sequence be configured?

+1  A: 

Found the answer myself. I added the following annotation to the message driven bean:

@Depends({"jboss.messaging.destination:service=Topic,name=XxxxTopic"})
Kees de Kooter
A: 

Thanks for the post works fine for me too

A: 

which config file should be updated if i am not using annotations?