在 Jboss EAP 6.4 中部署 EJB 2.0
Deploying EJB 2.0 in Jboss EAP 6.4
我正在将由一个 Web 模块和一个 EJB 模块组成的 JBoss 4.3GA 企业应用程序迁移到 JBoss 6.4 EAP。
我做了他们网站上提供的 JBoss 迁移文档中指定的所有更改。 JBoss migration doc
我什至能够在服务器中成功部署我的耳朵,但在调用第一个 ejb 时出现以下错误。
Servlet hibernateInit 抛出 load() 异常:java.lang.ClassCastException:com.adminserver.bll.SystemInformationBll$$$view42 无法转换为 org.omg.CORBA.Object。
这里可能有什么问题的任何建议
查找了 class 和由不同 class 加载器加载的本地 class,因此类型转换失败
检查应用程序代码并确保使用正确的 JNDI 名称来查找 EJB。
- 检查应用程序是否有重复的classes打包成多个modules/jars
我通过将本地 iterface 替换为远程 iterface 来更正 standalone.xml 中查找绑定中的 JNDI 名称,从而解决了这个问题。
这正是我所做的..
替换
<lookup name="java:global/coname/ABCDBll" lookup="java:global/ABCDEnterpriseApp/EBCDEJBApp/ABCDBll!com.coname.bll.ABCDBllRemote"/>
有了这个
<lookup name="java:global/coname/ABCDBll" lookup="java:global/ABCDEnterpriseApp/EBCDEJBApp/ABCDBll!com.coname.bll.ABCDBllRemoteHome"/>
我正在将由一个 Web 模块和一个 EJB 模块组成的 JBoss 4.3GA 企业应用程序迁移到 JBoss 6.4 EAP。
我做了他们网站上提供的 JBoss 迁移文档中指定的所有更改。 JBoss migration doc
我什至能够在服务器中成功部署我的耳朵,但在调用第一个 ejb 时出现以下错误。
Servlet hibernateInit 抛出 load() 异常:java.lang.ClassCastException:com.adminserver.bll.SystemInformationBll$$$view42 无法转换为 org.omg.CORBA.Object。
这里可能有什么问题的任何建议
查找了 class 和由不同 class 加载器加载的本地 class,因此类型转换失败
检查应用程序代码并确保使用正确的 JNDI 名称来查找 EJB。
- 检查应用程序是否有重复的classes打包成多个modules/jars
我通过将本地 iterface 替换为远程 iterface 来更正 standalone.xml 中查找绑定中的 JNDI 名称,从而解决了这个问题。
这正是我所做的.. 替换
<lookup name="java:global/coname/ABCDBll" lookup="java:global/ABCDEnterpriseApp/EBCDEJBApp/ABCDBll!com.coname.bll.ABCDBllRemote"/>
有了这个
<lookup name="java:global/coname/ABCDBll" lookup="java:global/ABCDEnterpriseApp/EBCDEJBApp/ABCDBll!com.coname.bll.ABCDBllRemoteHome"/>