询问 lookup EjbJNDI 时的奇怪问题 如果你的两ejb在两个不同的jar包中,那么你必须要把这两个jar包打在一个ear包中,再部署这个ear。结果就会对。如果你的两个ejb在同一个jar中,那么问题应该在ejb-jar.xml中,你好好检查一下。祝好运! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你的jndi没有帮定好,或者就是你的jndi名字不对,你检查一下,注意大小写。 我仔细查过JNDI,肯定没有写错,大小写也没有错。我后来把那个不能lookup到的EJB单独拿出来,放在一个ear中,部署成功,但lookup时就是提示 not found,不管我用的什么JNDI名字。我现在猜想是程序代码的问题,但我也没有见j2ee的容器(sun 自带的)对无状态会话Bean有什么限制要求啊,再说如果要是触犯限制那也不能被部署成功啊。我用同样的客户端代码lookup其他的EJB时都能成功。真不知是为什么,希望大家帮忙!非常感谢! 我遇到过这个问题,当时在bean中调用了资源,而资源没有定义好就会出现这种问题. 我现在找出了问题所在:我能lookup到的那个EJB是有本地接口和远程接口;但lookup不到的那个EJB当时考虑到只需本地接口调用,就没有开发远程接口,问题就出在我没有开发远程接口,所以能部署但不能lookup。这怎么可能呢?EJB2.0是可以本地调用的啊,那我就可以不开发远程接口啊,再说真要是必须远程接口而我没有开发,那部署工具(deploytool)也应该会提示啊。再有奇怪的就是,我在不得已的情况下,为每个Bean开发了远程接口,然后想用本地接口调用,语句如下: InitialContext initCtx = new InitialContext(); MyEjbLocalHome localHome = (MyEjbLocalHome)initCtx.lookup ("myEjbJNDI");执行到这儿,就抛出异常:java.lang.ClassCastException: _MyEjbHome_Stub.怎么会这样呢?为什么我的本地调用总不能成功呢?希望大家给予帮助,谢谢!对了,我的j2ee版本是1.3.01_win。再次谢谢! 还没有得到答案,希望大家继续帮忙,现把两问题整理如下(j2ee 1.3.01): 1、只有Local接口的EJB能部署成功,也会要求输入JNDI,但不管是否在一个ear的客户端,lookup(JNDIName)时都会提示Name not found;这样就导致了下面第二个问题的发生。 2、有Remote和Local接口的EJB,在用Remote接口调用时(先lookup()后narrow())能正常使用;但用Local接口调用时,直接用lookup()造型,但这时的lookup到实际是Remote Home对象,所以会产生造型异常。个人觉得问题出在1,因为本地接口根本不能被正确部署。 找到这个问题,不知是不是j2ee的Bug,还是我的说法不成立。希望大家给予指点和讨论,谢谢! 问下大家Junit测试方法怎么写? struts2 中Action 怎么安条件查询怎么安条件查询 求 解释Jav一点代码含义 JSP乱码问题 weblogic应用服务器java.lang.NullPointerException Log4j 项目问题 关于EJB3和Java EE的Blog 晕点,CMP2。0的部署问题 JBOSS问题(不一定能问答,大家讨论一下) 怎样用Java和水晶报表传递参数? 还是apache2和tomcat4.12的问题 J2EE VS .NET? 相信大家一定听说过有名的"宠物店大战"……
InitialContext initCtx = new InitialContext();
MyEjbLocalHome localHome = (MyEjbLocalHome)initCtx.lookup
("myEjbJNDI");
执行到这儿,就抛出异常:java.lang.ClassCastException: _MyEjbHome_Stub.怎么会这样呢?为什么我的本地调用总不能成功呢?希望大家给予帮助,谢谢!
对了,我的j2ee版本是1.3.01_win。再次谢谢!
2、有Remote和Local接口的EJB,在用Remote接口调用时(先lookup()后narrow())能正常使用;但用Local接口调用时,直接用lookup()造型,但这时的lookup到实际是Remote Home对象,所以会产生造型异常。个人觉得问题出在1,因为本地接口根本不能被正确部署。 找到这个问题,不知是不是j2ee的Bug,还是我的说法不成立。希望大家给予指点和讨论,谢谢!