怎么样在不同的计算机上部署EJB? 每个EJB都有JNDI 访问它的JNDI就可以了,只不过这个时候是访问远程的JNDI,有专门的协议(就像http)来访问的,访问的时候用对方的IP就可以了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1.自己打包,累死啊,让框架来打吧2.你说的是两个ejb还是客户端访问服务器端:两个ejb的话用jndi访问;客户端好象没必要问吧 部署EJB实际上就是让EJB服务器知道你写的类的具体情况(类型,方法名等等).而不同机器上的EJB服务器互相之间交流就是通过JNDI技术来作到.具体方法可以查看EJB服务器的说明 继续问:具体怎么设置JNDI?(本人实在是菜鸟) 举个例子:在计算机A为EJB服务器,计算机B为Web服务器(用WebLogic做Web服务器),手工编写了EJB_jar.xml部署文件,三个类文件:CustomerEJB.class, CustomerHome.class, CustomerLocale.class问题:1.计算机A作为EJB服务器也需要装上WEBLogic吗?2.这三个类件应如何打包,分别怎么放在两台计算机上?3.EJB_jar.xml是应该放在A上还是B上?4.在计算机B上怎么样设置JNDI来访问这个EJB?(看了几天的书,也没理出一个头绪,问题还是一大堆,还是盼望大家能指点指点。) 不好意思!我也刚开始学习EJB!关注中... 问题:1.计算机A作为EJB服务器也需要装上WEBLogic吗? 不一定非得安装上WEBLOGIC,只要有支持EJB的服务器就可以,websphere,jboss等都可以。2.这三个类件应如何打包,分别怎么放在两台计算机上?这三个类需要打成一个包,包里面需要有一个META-INF文件夹,文件夹里面需要有一个,ejb-jar.xml,这个xml是ejb部署描述文件。将这个ejb发部到计算机A的EJB服务器上,且需要将这个包作为web服务器库文件,可以放在/web-inf/lib里。或者说只要让classloader能找到这三个类就可以,3.EJB_jar.xml是应该放在A上还是B上?参照24.在计算机B上怎么样设置JNDI来访问这个EJB?EJB服务器一般都自带一个JNDI服务器,且不同的ejb服务器上的driver是不一样的。以websphere为例Hashtable table = new Hashtable();table.put(Context.INITIAL_CONTEXT_FACTORY, "com.ibm.websphere.naming.WsnInitialContextFactory");table.put(Context.PROVIDER_URL, "corbaloc:iiop:localhost:2809");Context ctx = new InitialContext(table );try{ Object obj = ctx.lookup("java:comp/env/XXXX"); ejbHome = (EJBHome) PortableRemoteObject.narrow(obj,"XXXX"); ...} catch (ClassCastException e){ ...} catch (NamingException e){ ...} JAVA超链接下载中文名称的文档报页面不存在 java ee,ssh相关 select语句 大家帮忙看下 数据库连接字符集问题 attachment 如何在JB9中搭建WebSphere服务器 用过weblogic,websphere的朋友请进! 如何把JDBC返回的ResultSet转化为XML 下面代码怎么理解 webservice设置的http请求头丢失 救命啊,为什么下载struts打不开 有谁比我菜?!超级菜鸟问题!!
2.你说的是两个ejb还是客户端访问服务器端:两个ejb的话用jndi访问;客户端好象没必要问吧
而不同机器上的EJB服务器互相之间交流就是通过JNDI技术来作到.具体方法可以查看EJB服务器的说明
具体怎么设置JNDI?(本人实在是菜鸟)
在计算机A为EJB服务器,计算机B为Web服务器(用WebLogic做Web服务器),手工编写了EJB_jar.xml部署文件,三个类文件:CustomerEJB.class, CustomerHome.class, CustomerLocale.class问题:
1.计算机A作为EJB服务器也需要装上WEBLogic吗?
2.这三个类件应如何打包,分别怎么放在两台计算机上?
3.EJB_jar.xml是应该放在A上还是B上?
4.在计算机B上怎么样设置JNDI来访问这个EJB?(看了几天的书,也没理出一个头绪,问题还是一大堆,还是盼望大家能指点指点。)
1.计算机A作为EJB服务器也需要装上WEBLogic吗?
不一定非得安装上WEBLOGIC,只要有支持EJB的服务器就可以,
websphere,jboss等都可以。2.这三个类件应如何打包,分别怎么放在两台计算机上?
这三个类需要打成一个包,包里面需要有一个META-INF文件夹,
文件夹里面需要有一个,ejb-jar.xml,这个xml是ejb部署描述文件。将这个ejb发部到计算机A的EJB服务器上,
且需要将这个包作为web服务器库文件,可以放在/web-inf/lib里。
或者说只要让classloader能找到这三个类就可以,3.EJB_jar.xml是应该放在A上还是B上?
参照24.在计算机B上怎么样设置JNDI来访问这个EJB?
EJB服务器一般都自带一个JNDI服务器,且不同的ejb服务器上的driver是不一样的。
以websphere为例
Hashtable table = new Hashtable();
table.put(Context.INITIAL_CONTEXT_FACTORY, "com.ibm.websphere.naming.WsnInitialContextFactory");
table.put(Context.PROVIDER_URL, "corbaloc:iiop:localhost:2809");
Context ctx = new InitialContext(table );
try{
Object obj = ctx.lookup("java:comp/env/XXXX");
ejbHome = (EJBHome) PortableRemoteObject.narrow(obj,"XXXX");
...
} catch (ClassCastException e){
...
} catch (NamingException e){
...
}