2009-03-24 10 views
0

JBoss 5にアプリケーションをデプロイすると、QueueServiceが起動する前にEJBが作成されます。JBossサービス(JmsActivation)の起動シーケンスを設定する方法

展開シーケンスを設定することができますどのように
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 [email protected] ... 
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 

:キューはまだ利用できないため、メッセージ駆動型Beanの作成が​​今無残失敗しますか?

答えて

1

自分自身で答えを見つけました。私は、メッセージ駆動型Beanに以下の注釈を追加しました:

@Depends({"jboss.messaging.destination:service=Topic,name=XxxxTopic"}) 
1

<?xml version="1.0" encoding="UTF-8"?> 

<!-- 
    Null persistence config. 

    Use this if you don't actually want to persist anything 

    $Id$ 
--> 

<server> 

    <!-- Persistence Manager MBean configuration 
     ======================================== --> 

    <mbean code="org.jboss.messaging.core.jmx.NullPersistenceManagerService" 
     name="jboss.messaging:service=PersistenceManager" 
     xmbean-dd="xmdesc/NullPersistenceManager-xmbean.xml"/> 

    <!-- Messaging Post Office MBean configuration 
     ========================================= --> 

    <mbean code="org.jboss.messaging.core.jmx.MessagingPostOfficeService" 
     name="jboss.messaging:service=PostOffice" 
     xmbean-dd="xmdesc/MessagingPostOffice-xmbean.xml"> 

     <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends> 
     <depends optional-attribute-name="TransactionManager">jboss:service=TransactionManager</depends> 

     <!-- The name of the post office --> 

     <attribute name="PostOfficeName">JMS post office</attribute> 

     <!-- This post office is clustered. If you don't want a clustered post office then set to false --> 

     <attribute name="Clustered">false</attribute> 

    </mbean> 

    <!-- Messaging JMS User Manager MBean config 
     ======================================= --> 

    <mbean code="org.jboss.jms.server.plugin.JDBCJMSUserManagerService" 
     name="jboss.messaging:service=JMSUserManager" 
     xmbean-dd="xmdesc/JMSUserManager-xmbean.xml"> 
     <depends optional-attribute-name="TransactionManager">jboss:service=TransactionManager</depends> 
    </mbean> 

</server> 

/'nullで持続-service.xmlに' として、これを保存し、この展開/メッセージングを置きます

これで動作します

関連する問題