在Tomcat上调用Weblogic上的EJB问题

lyo 2003-08-30 05:14:17
CSDN java板块关于jsp调用EJB的都看过了,都没有能解决我问题的回帖。

我在weblogic上成功部署了一个EJB,Hello.jar,用jsp文件在weblogic上测试成功了(也检查过weblogic上的JNDI名有HelloEJB),但是如果在Tomcat上测试,Tomcat就会说JNDI没有绑定到Context,:"javax.naming.NameNotFoundException: Name ejb is not bound in this Context "
可是我检查了Weblogic上的jndi,已经绑定了,也已经在ejb-jar.xml中定义了资源引用:
<ejb-ref>
<ejb-ref-name>HelloEJB</ejb-ref-name>
<ejb-ref-type>Session</ejb-ref-type>
<home>lyoejb.Hellohome</home>
<remote>lyoejb.Hello</remote>
<ejb-link>Hello.jar#HelloEJB</ejb-link>
</ejb-ref>

在weblogic-ejb-jar.xml中:

<weblogic-ejb-jar>
<weblogic-enterprise-bean>
<ejb-name>HelloEJB</ejb-name>
<stateless-session-descriptor>
<pool>
</pool>

<stateless-clustering>
</stateless-clustering>

</stateless-session-descriptor>

<transaction-descriptor>
</transaction-descriptor>

<reference-descriptor>
<ejb-reference-description>
<ejb-ref-name>HelloEJB</ejb-ref-name>
<jndi-name>ejb/HelloEJB</jndi-name>
</ejb-reference-description>
</reference-descriptor>

<jndi-name>ejb/HelloEJB</jndi-name>
</weblogic-enterprise-bean>
</weblogic-ejb-jar>

Hello.jar和wlclient.jar也已经拷贝到Tomcat下了(奇怪的是如果我在jsp文件中用import="weblogic.jdni.*",他会说这个包不存在,Hello.jar包她就可以找到,


是不是在Tomcat上还需要绑定一次?在web.xml中怎样设置?
请指点!
...全文
67 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
lyo 2003-10-05
  • 打赏
  • 举报
回复
那麽互相引用和用jndi来调用的配置有何区别呢?多谢
lyo 2003-09-05
  • 打赏
  • 举报
回复
那麽互相引用和用jndi来调用的配置有何区别呢?多谢
lyo 2003-08-31
  • 打赏
  • 举报
回复
------>你需要通过weblogic的jndi工厂,和url去初始化你的context

是不是这样:把weblogic.jndi.WLInitialConext放到hashtable中,用hashtable初始化Context,但我想知道第二种方法 在ejb中添加引用,怎麽做?
Martin2002 2003-08-31
  • 打赏
  • 举报
回复
互相引用的前提是在同一个服务器环境种。请先把概念搞清楚。
Martin2002 2003-08-31
  • 打赏
  • 举报
回复
不同服务器之间jndi不能互相引用.
我的意思是,你需要通过weblogic的jndi工厂,和url去初始化你的context
makepage79 2003-08-31
  • 打赏
  • 举报
回复
怪!
yfh0919 2003-08-31
  • 打赏
  • 举报
回复
gz
lyo 2003-08-30
  • 打赏
  • 举报
回复
你需要用weblogic的jndi属性去初始化你在
tomcat中的jndi环境 <-------你的意思是不是用hashtable取初始化Context?

我知道还有一种方法是添加引用(referrence),你能介绍一下后者吗?
Martin2002 2003-08-30
  • 打赏
  • 举报
回复
不知道你为什么要在tomcat环境中去调用在weblogic部署的ejb
由于你在寻找ejb时,需要使用weblogic提供的jndi服务,所以tomcat根本无法为你找到在
weblogic上部署的ejb资源.如果你一定要这么做,你需要用weblogic的jndi属性去初始化你在
tomcat中的jndi环境,这样就可以找到你需要的资源.
jcreatorqijiashe 2003-08-30
  • 打赏
  • 举报
回复
up!

67,512

社区成员

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

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