2012-03-20 85 views
0

我有这个应用程序,我写了一个普通的servlet。它使用焊接CDI。在一个普通的JBoss 7.0.2上部署它时,一切正常。使用焊接与Liferay 6.1 CE/Jboss

我已经将应用程序转换为Portlet 2.0。我试图将portlet部署到JBoss上运行的Liferay 6.1 CE,但我得到下面的异常

14:16:20,587 INFO [stdout] (http--127.0.0.1-8080-86) 14:16:20,583 ERROR [PortletServlet:97] javax.portlet.PortletException: java.lang.RuntimeException: javax.naming.NameNotFoundException: BeanManager -- service jboss.naming.context.java.module.ROOT.ROOT.BeanManager 

当我打电话

return (BeanManager) new InitialContext() 
       .lookup("java:comp/BeanManager"); 

任何想法可能会导致这种情况发生此异常?

回答

0

升级到AS7的新版本时,它包含修复了门户环境中Weld使用情况的问题。

+0

不幸的是,我无法控制生产服务器的部署环境。 – 2012-03-21 05:14:37

+0

如果您可以将焊接罐更新为适用于您的新版本,否则会卡住。 – LightGuard 2012-03-21 14:53:16

+0

我现在已经尝试了两种方法。我无法在JBoss 7.1上部署Liferay - 出现了一些我无法解决的错误。然后我尝试通过这样做升级焊接到1.1.5.AS71.Final(git标签):来自https://github.com/weld/core - “mvn clean install -Pupdate-jboss-as”更新AS7 ; 查看jboss-as/jboss-as-7/build.properties for jboss.home道具 这更新了焊接jar文件,但我仍然遇到与原始文章中所述完全相同的问题。 – 2012-03-22 12:23:25