问题描述
如题,在使用Servlet调用StatefulSessionBean的时候,发生java.lang.ClassCastException异常!!//******************************StatefulSessionBean*********************************//@Stateful(name="TestStatefulBean")publicclassTestStatefulBeanimplementsTestStatefulBeanRemote{publicStringsayHello(Stringname){returnname+"你好,我是TestStatefulBean!";}}//******************************Servlet*********************************//try{TestStatefulBeanRemoteremote=(TestStatefulBeanRemote)ServiceLocator.getInstance().lookup("inter.TestStatefulBeanRemote");<—此行异常if(remote!=null){res=remote.sayHello("inter");}}catch(NamingExceptionex){Logger.getLogger(StatefulServlet.class.getName()).log(Level.SEVERE,null,ex);}现在在Servlet里面做远程调用的时候,标示异常的一行抛出java.lang.ClassCastException异常:应用程序WebApp_war中servletStatefulServlet的某一服务方法创建了未捕获到的异常。创建的异常:java.lang.ClassCastException:inter._TestStatefulBeanRemote_Stubincompatiblewithinter.TestStatefulBeanRemote应该是容器生成的Stub文件发生转化的时候出现的问题,求助怎么解决这个问题!此外,对于EJB项目生成的EJBModule.jar,使用命令行工具生成本地客户端的文件EJBModule_Stub.jar,然后使用本地客户端调用就可以,但是web就出错!
解决方案
解决方案二:
你用sessionbean的接口替换实现的类,试试看。或者确定一下你的class是否已经包括在你的jar文件里。
解决方案三:
该回复于2009-03-31 09:28:10被版主删除
解决方案四:
我也很想知道答案~~
解决方案五:
顶。。。。。。。。。。。
解决方案六:
thinclient.jar,这个jar包是WebSphere上开发ejb必备jar包
解决方案七:
路过~~~
解决方案八:
该回复于2011-04-16 09:29:20被版主删除
解决方案九:
说说你的EAR项目下包括哪几个ejbjar和war,它们的MANIFEST.MF里面又包括哪些东西。另外有没有改动过将这个EAR部署到WAS上时的classloader层次设置(parentfirst/parentlast之类的),