2013-05-17 38 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

相关问题