2011-03-23 55 views
1

我試圖從JBoss的4遷移到JBoss 6我已經運行在JBoss上的應用程序4. 但是當我嘗試運行應用程序我得到以下異常:在jboss.xml中沒有jndi-name的隊列有什麼問題?

DEPLOYMENTS IN ERROR: 
    Deployment "jboss.j2ee:binding=message-driven-bean,jndiName=local/[email protected],plugin=invoker,service=EJB" is in error due to the following reason(s): org.jboss.deployment.DeploymentException: The message-destination 'PhysicalQueue' has no jndi-name in jboss.xml 

這是其中的一部分的jboss.xml文件:

<message-driven> 
     <ejb-name>ProjectMessage</ejb-name> 
     <destination-jndi-name>queue/PhysicalQueue</destination-jndi-name> 
     </message-driven> 

我已經在jmx控制檯中創建了隊列。

我試圖尋找這個問題的解決方案,但我似乎無法找到任何。

有沒有人有線索/建議哪些可能是錯的?

提前致謝!

回答

0

發生MDB錯誤是因爲MDB部署時隊列不存在。一旦在JMXConsole中創建了隊列,就太遲了(除非你真的很快...... :)),並且在AS重新啓動後,隊列配置不會保留。

您需要定義您的隊列deploy/hornetq/hornetq-jms.xml

事情是這樣的:

<queue name="PhysicalQueue"> 
     <entry name="/queue/PhysicalQueue"/> 
    </queue>