<%-- JSP全站自动生成HTML下载新闻系统 V3.1 作者:JSP天空网站长 曹进 QQ:173241393 --%> 如何调用部署在其他服务器上的EJB?
 
用户名:
密码:
终身会员
  首页 网络文摘 技术专题 下载中心 JSP培训 公司产品 JSP虚拟主机 技术论坛 会员 JSP免费空间  
  技术文摘: JSP基础 | JSP高级 | JSP环境 | JAVA基础 | JAVA高级 | JAVA工具 | JAVA数据库 | WEB框架 | XML相关 | JAVA考试 | J2EE相关 | J2ME相关 |
  视频下载: 程序设计数据库相关教程计算机基础教程图形图像网络技术网络安全时空书库EasyShop虚拟主机JSP培训技术论坛
  书籍教程: JSP教程Java教程图像软件XML教程数据库教程网页教程工具软件服务器相关ASP教程PHP教程CGI教程.NET教程
  代码下载: ASP代码下载JSP代码下载PHP代码下载CGI代码下载Flash代码C/C++/VCPowerBuilderDelphiVisualBasicVisualFoxpro
您的位置: 首页 -> 文章分类 -> EJB相关 -> 如何调用部署在其他服务器上的EJB?
 文摘搜索
 
 文摘资源分类
 
 文摘总排行榜TOP10
 
 最新更新文摘TOP10
 

如何调用部署在其他服务器上的EJB?

[来源]管理员   [作者]网络文摘    [时间]2005-11-08
推荐等级: 点击:
前段日子有网友问如何调用不在一个应用服务器上的EJB的问题,自己试验了一下,下面举个例子把这个问题说清楚:

假设我们写了一个Session Bean,实现了一些业务方法,部署到了A服务器的sunone application server上,然后我们又写了一个JSP,并将其部署到了B服务器上的sunone application server中,该JSP将调用A服务器上那个session bean的一些业务方法,这其中需要注意两点:

1、在使用JNDI lookup A服务器上的那个session bean的时候,需要如下配置环境变量:
Properties env = new Properties();
env.put("java.naming.factory.initial",
"com.sun.jndi.cosnaming.CNCtxFactory");
env.put("java.naming.provider.url", "iiop://192.168.0.2:3700");
其中192.168.0.2就是A服务器的IP地址,当然也可以写A服务器的主机名
当然,有些文章或书上可能是这种写法,也是可以的:
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.cosnaming.CNCtxFactory");
env.put(Context.PROVIDER_URL, "iiop://192.168.0.2:3700");

2、众所周知,远程调用需要在调用端有被调用类的stub类,对应到J2EE应用中,也就是ejb的client类,一般来说,这个类都是在部署我们的J2EE应用时自动生成的,所以需要将包含这个类的jar包放到WEB-INF/lib目录下(如果是使用一个web app来作为客户端调用EJB)以便应用服务器能找到这些stub类并正确还原出调用对象来

明确了以上两点后,基本上就没有问题了,有兴趣的朋友可以自己试验一下
[收藏][打印][关闭]
在线咨询服务 在线咨询服务 在线咨询服务 在线咨询服务
Copyright©2005-2006陕西思远数码科技有限责任公司 服务电话:029-88212987 传真:029-88278265 售后服务QQ:173241393
地址:陕西省西安市吉祥路186号太白新苑C座2104 陕ICP备05004508号