WAS 7.0下使用EJB3.0的ClassCastException问题

软件名称:WAS 软件版本:7.0环境平台:XP问题描述:在使用Servlet调用Stateful Session Bean的时候,发生java.lang.ClassCastException异常!!// ******************************Stateful Session Bean*********************************//@Stateful(name="TestStatefulBean")public...显示全部
软件名称:WAS

软件版本:7.0

环境平台:XP

问题描述:

在使用Servlet调用Stateful Session Bean的时候,发生java.lang.ClassCastException异常!!
// ******************************Stateful Session Bean*********************************//
@Stateful(name="TestStatefulBean")
public class TestStatefulBean implements TestStatefulBeanRemote {
  public String sayHello(String name)
  {
  return name+"你好,我是TestStatefulBean!";
  }
}

// ******************************Servlet*********************************//
try {
  TestStatefulBeanRemote remote = (TestStatefulBeanRemote) ServiceLocator.getInstance().lookup("inter.TestStatefulBeanRemote"); <— 此行异常
  if(remote!=null)
  {
  res = remote.sayHello("inter");
  }
} catch (NamingException ex) {
  Logger.getLogger(StatefulServlet.class.getName()).log(Level.SEVERE, null, ex);
  }


现在在Servlet里面做远程调用的时候,标示异常的一行抛出java.lang.ClassCastException异常:
应用程序 WebApp_war 中 servlet StatefulServlet 的某一服务方法创建了未捕获到的异常。创建的异常:java.lang.ClassCastException: inter._TestStatefulBeanRemote_Stub incompatible with inter.TestStatefulBeanRemote

应该是容器生成的Stub文件发生转化的时候出现的问题,求助怎么解决这个问题!

此外,对于EJB项目生成的EJBModule.jar,使用命令行工具生成本地客户端的文件EJBModule_Stub.jar,然后使用本地客户端调用就可以,但是web就出错!收起
参与6

查看其它 4 个回答YuLimin的回答

YuLiminYuLimin资深技术顾问IBM广州
另外一个就是设置详细的类加载,查查看log里的加载情况,再做分析。
互联网服务 · 2010-05-03
浏览528

回答者

YuLimin
资深技术顾问IBM广州
擅长领域: 中间件服务器应用服务器

YuLimin 最近回答过的问题

回答状态

  • 发布时间:2010-05-03
  • 关注会员:1 人
  • 回答浏览:528
  • X社区推广