EJB的初学问题,希望EJB的高手能给予指点,谢谢了!

noratong 2003-11-28 10:40:25
本人初学EJB,在JBuilder9+weblogic7的配置环境下,用jb的EJB生成向导生成了一个简单的hello的sessionbean,我只添加了一个方法;然后又用生成向导生成了一个调试的客户端.调用这个远程bean的方法.代码几乎全部都是jb自动生成的.但一运行就报以下一个异常,不知何故??????
javax.naming.NameNotFoundException: Unable to resolve 'HelloWorld' Resolved: '' Unresolved:'HelloWorld' ; remaining name 'HelloWorld'

at weblogic.rmi.internal.BasicOutboundRequest.sendReceive(BasicOutboundRequest.java:109)

at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:262)

at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:229)

at weblogic.jndi.internal.ServerNamingNode_WLStub.lookup(Unknown Source)

at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:338)-- Failed initializing bean access.



at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:333)

at javax.naming.InitialContext.lookup(InitialContext.java:347)

at ejbtest.HelloWorldTestClient.initialize(HelloWorldTestClient.java:36)

at ejbtest.HelloWorldTestClient.<init>(HelloWorldTestClient.java:18)

at ejbtest.HelloWorldTestClient.main(HelloWorldTestClient.java:191)

Error in Hello(): Remote interface reference is null. It must be created by calling one of the Home interface methods first.

HelloWorld是我ejb对象类的名字,也是Context的Lookup中传入的名字.
而且生成的jndi-definitions.xml文件里并没有任何指示命名服务的代码,我是不是要手动写入代码才行?????如果是,该怎么写?????

谢谢高手们给我一点帮助和指点,万分感谢.
...全文
31 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
ji66 2003-12-03
  • 打赏
  • 举报
回复
在你的home接口声明这个方法了吗?
whoami0967 2003-12-01
  • 打赏
  • 举报
回复
以此为例:将
Test6Home home=(Test6Home) context.lookup("java:comp/env/ejb/Test6");
改为
Test6Home home=(Test6Home) context.lookup("Test6");

因为weblogic中,前一种写法不识别。
noratong 2003-11-30
  • 打赏
  • 举报
回复
那怎么看jndi tree里面有那些名字存在呢?????

我第一次用它,照说应该不会存在才对呀.
noratong 2003-11-30
  • 打赏
  • 举报
回复
还有没有大哥指教一下?????

问题还没解决,我不想又这样草草了事.
lilijr 2003-11-30
  • 打赏
  • 举报
回复
客户端生成要改一下ip的,一般把t3://xxxxname........改成localhost或你的ip地址
lalapigs 2003-11-29
  • 打赏
  • 举报
回复
你的JNDI名字已经存在于weblogic server的jndi tree里了!你可以把那个名字删掉!不过最简单的就是把你的这个JNDI名字改了!然后就可以了!
noratong 2003-11-29
  • 打赏
  • 举报
回复
Up!!!
liuyi8903 2003-11-28
  • 打赏
  • 举报
回复
在你的接口里面没有声明这个返回字符串方法

67,541

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧