在Jboss EAP 6.4中部署EJB2.0

在Jboss EAP 6.4中部署EJB2.0,jboss,ejb,classcastexception,Jboss,Ejb,Classcastexception,我正在将由一个Web模块和一个EJB模块组成的JBoss 4.3GA企业应用程序迁移到JBoss 6.4 EAP 我做了他们网站上提供的JBoss迁移文档中指定的所有更改 我甚至能够在服务器中成功地部署我的ear,但在调用第一个ejb时出现了以下错误 Servlet hibernateInit引发了load()异常:java.lang.ClassCastException:com.adminserver.bll.SystemInformationBll$$$$view42无法强制转换为org.o

我正在将由一个Web模块和一个EJB模块组成的JBoss 4.3GA企业应用程序迁移到JBoss 6.4 EAP

我做了他们网站上提供的JBoss迁移文档中指定的所有更改

我甚至能够在服务器中成功地部署我的ear,但在调用第一个ejb时出现了以下错误

Servlet hibernateInit引发了load()异常:java.lang.ClassCastException:com.adminserver.bll.SystemInformationBll$$$$view42无法强制转换为org.omg.CORBA.Object

这里有什么问题吗

  • 查找了由不同类装入器装入的类和本地类,因此类型转换失败

  • 检查应用程序代码,确保使用正确的JNDI名称来查找EJB

  • 检查应用程序是否在多个模块/jar中打包了重复的类

我通过将本地iterface替换为远程iterface来更正standalone.xml中lookup绑定中的JNDI名称,从而解决了这个问题

这正是我所做的。。 替换


用这个

<lookup name="java:global/coname/ABCDBll" lookup="java:global/ABCDEnterpriseApp/EBCDEJBApp/ABCDBll!com.coname.bll.ABCDBllRemoteHome"/>

<lookup name="java:global/coname/ABCDBll" lookup="java:global/ABCDEnterpriseApp/EBCDEJBApp/ABCDBll!com.coname.bll.ABCDBllRemoteHome"/>