你怎么使用java:comp/env/MyBean来查找啊?那你有没有配置环境属性(在Bean的部署文件中<env-entry>),而且你用的是env,不能直接查找到Bean,应该是在java:comp/env/MyBean查找得到jndi,然后根据这个jndi来查找bean,如果你没有配置,那肯定不行,这种做法是为了部署Bean的时候灵活才采用的,如果你是自己调试,你可以直接查找jndi名字,简单的几个字母就可以了(不能加入java:comp关键字),你可以lookup("MyBean"),这不是很好吗?
java.rmi.RemoteException: Error during setXXXContext: ; nested exception is:
java.lang.ClassCastException: bbb.MyBean_wke56q_LocalHomeImpljava.lang.ClassCastException: bbb.MyBean_wke56q_LocalHomeImpl
java.rmi.RemoteException: Error during setXXXContext: ; nested exception is:
java.lang.ClassCastException: bbb.MyBean_wke56q_LocalHomeImpljava.lang.ClassCastException: bbb.MyBean_wke56q_LocalHomeImpl
当然Datasource的jndi只有在XML文件中定义,这里假设你的Datasource jndi
为 "DSJndi ",这应该写成: DataSource ds = (Datasource)ctx.lookup("DSJndi");
InitialContext initial = new InitialContext();
ds = (DataSource)initial.lookup("MyBean");
MyBean是我在jb里建立的datasource jndi name,我是不是写的和你说的一样啊