2013-05-17 62 views
0

我試圖從遷移的JBoss 5.1我的Java EE應用到JBoss 7.1和得到一個部署錯誤。不能注入在applicationContext.xml中指定的EJB在JBoss中7

我的耳朵具有2個EJB模塊和1個WAR模塊。這兩個EJB模塊都可以毫無問題地部署。但是,當我試圖與WAR模塊部署它說

Context initialization failed: org.springframework.beans.factory.BeanCreationException: Error creating bean with name "className" Injection of resource fields failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'java:global/ear/ejb/FacadeBean!com.ejb.business.SearchFacade' is defined: not found in JNDI environment

因爲版權問題我無法透露完整的類名。但是「classname」被定義爲我的spring應用程序上下文文件中的一個bean,並且它有一個SearchFacade的依賴項注入,它也具有一些依賴關係。

什麼困惑的是,在JBoss日誌它表明SearchFacade部署沒有任何問題。

我發現很難找到針對此問題的解決方案。任何幫助將不勝感激。

在此先感謝。

回答

0

看起來像春風不能夠確定的是,EJB組件在EJB JAR,你需要強制執行在EJB JAR的組件被初始化,並且在你的WAR組件之前開始。

你有沒有嘗試設置元素到應用程序中的XML *,看看是否有幫助?

像這樣的事情在你的application.xml

<application-name>EAR</application-name> 
<initialize-in-order>true</initialize-in-order> 
<module><ejb>EJB.jar</ejb></module> 
<module><web><web-uri>WAR.war</web-uri><context-root>.... 
+0

您好感謝您的答覆。我添加了一個application.xml到項目中,並按照你的建議添加了內容。但仍然有同樣的錯誤。 –

+0

嗨,我不好意思,我指定模塊時做了錯誤。我糾正它,現在一切都很好。非常感謝幫助我。 –

+0

很高興工作... – masterthefly

相關問題