ejb可以实现远程调用吗?怎样实现? 和webservice的区别?
ejb可以远程调用吗?例如192。168。22。22发布了ejb包,定义它接口,想在192。168。22。24上写程序调用它的接口,可以实现吗?
如果可以怎么实现呢,在程序的哪里写上bind 192。168。22。22 url的设置呢?
这样的话,远程机器可以调用服务接口,和webservice又有什么区别呢? 谢谢讨论!
问题点数:100、回复次数:10Top
1 楼majy()Oo.冲天剑.oO()(为这个国家做点什么吧)回复于 2004-08-01 08:47:37 得分 0
Ejb是可以实现远程调用的,至于怎么调用,如果你真要知道,恐怕只能自己仔细的学学了,因为涉及很多的细节。.Top
2 楼tyrone98(林林)回复于 2004-08-01 09:41:49 得分 0
如果你使用JBuilder,eclipse的话可以自动生成EJB测试类,上面就会有生成代码,一般是有以下几步,建立jndi上下文,查询出HOME接口,使用Home的create新建类就可以使用了。简单的很,EJB与webservice都是远程调用服务。但webservice是使用HTTP协议来进行传输,可以使用SOAP来进行调用,在.NET,JAVA,DEPHI都可以找到进行SOAP调用的接口。EJB使用专门的协议来进行数据传输。WEBservice的效率没有EJB高。Top
3 楼shuneng()回复于 2004-08-01 10:08:23 得分 0
刚学习EJB 呵呵 来GZTop
4 楼blueRose17()回复于 2004-08-01 13:56:32 得分 0
dTop
5 楼blueRose17()回复于 2004-08-01 13:59:34 得分 0
但是,客户端jndi调用ejb包时候,好像没有制定服务器地址,只是指定了包名字?它在哪里绑定url ,就和soap一样绑定wsdl到url呢?
webservice效率没有ejb高?消耗在哪里呢?
Top
6 楼blueRose17()回复于 2004-08-01 14:01:47 得分 0
就像initial.lookup("java:comp/env/ejb/SimpleCart");
而soap是可以绑定如:bind("http://192.168.22.22/aa.wsdl", test.Class)
ejb在哪里绑定呢?
Top
7 楼fbysss(独孤求败)回复于 2004-08-01 14:39:38 得分 0
咱用EJB搞东西,其实都没用用到其分布式的特点,可悲啊。
也许问题很简单。帮你顶。
Top
8 楼blueRose17()回复于 2004-08-01 15:15:51 得分 0
呵呵,谢谢支持阿Top
9 楼tyrone98(林林)回复于 2004-08-02 09:29:54 得分 100
给你一个例子,是weblogic上的用的
String url = "t3://YOUIP:7001";
String user = null;
String password = "";
Properties properties = null;
properties = new Properties();
properties.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
properties.put(Context.PROVIDER_URL, url);
if (user != null)
{
properties.put(Context.SECURITY_PRINCIPAL, user);
properties.put(Context.SECURITY_CREDENTIALS, password == null ? "" : password);
}
return new InitialContext(properties) ;
在用这个来lookup就行了Top
10 楼xlyyc(宇)回复于 2004-08-27 15:09:37 得分 0
markTop




