`
eimhee
  • 浏览: 2106350 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

关于EJB的远程调用sessionBean的方式

阅读更多

EJB的调用方式是有两种形式的,大致的调用顺序是这样的 

1->初始华servert的上下文,也就是初始化容器的上下文,

2->在在远程的调用EJB的beanHome接口

3->home接口的create()方法用来获取ejb的远程接口,

4->有了这个远程的接口我们就可以调用他的所有方法了.

在这里我们要注意的是,因为我们有远程调用和本地调用,他们也是不同的,具体加些小的代码片段来演示下

**********当是远程的时候:(调用方和EJB所在的JVM不是同一个的时候)********************************

1->初始华servert的上下文,也就是初始化容器的上下文,

             我们要使用java.util.properties来设置下容器上下文,以这个对象为参数来设置上下文.

//注意要导入包

Properties p
=new  Properties() ;
//将服务器的配置信息放入p中
p.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");
p.put (Context.PROVIDER_URL, 
"t3://localhost:7001");  //这里的localhost是weblogic所在的服务器的IP
//以上面的p来初始化容器上下文
Context ctx = new InitialContext (p); 

2->在在远程的调用EJB的beanHome接口

Object ref = context.lookup("JNDI_name"); //lookup()直接调用其jndi名称
SbLocalHome testHome =(ClassName)PortableRemoteObject.narrow(ref,ClassName.class);

3->home接口的create()方法用来获取ejb的远程接口,

test te= testHome .create()   //获得了远程的接口

4->有了这个远程的接口我们就可以调用他的所有方法了.

te.someMethod();

**********当是本地调用的时候:(调用方和EJB所在的JVM不是同一个的时候)********************************

 

//初始化容器上下文
Context cont=new InitialContext ();
//通过JNDI来获得sessionBean
testHome home=(testHome)cont.lookup("JNDIName");
//通过home来获得远程的接口
test te=home.create();
//通过远程接口来调用方法

分享到:
评论

相关推荐

    Tomcat6远程调用GlassFishV2的sessionbean

    Tomcat6远程调用GlassFish V2的session bean  GlassFish V2 是一个比较完整的ejb3服务器,性能也有了很大的提高,因此最近试用了一下,并通过Tomcat进行了分布式调用。  Session Bean: ...

    ejb3.0培训教程与源码(绝对精品)

    无状态的会话Bean: 不会保存的信息的和状态,无状态的SessionBean是可以重用的,而不是被立刻销毁; 2) 消息驱动Bean: 提供异步通讯; 3)实体Bean: 做数据的访问, EJB3.0已经不再用了; 使用JPA来代替实体Bean; ...

    经典JAVA.EE企业应用实战.基于WEBLOGIC_JBOSS的JSF_EJB3_JPA整合开发.pdf

    8.3.1 开发远程调用的无状态 Session Bean 304 8.3.2 开发本地调用的无状态 Session Bean 311 8.4 发布Session Bean 314 8.4.1 打包EJB-JAR 315 8.4.2 Annotation与部署描述文件 315 8.5 开发有状态的Session Bean ...

    EJB葵花宝典(题集)

    3SessionBean(会话Bean) 18 3.1会话Bean调用架构 18 3.2会话Bean的客户 18 3.3会话Bean的组成 19 3.4Stateless SessionBean(无状态会话Bean) 3.4.1需求 19 3.4.2Remote接口 20 3.4.3Local接口 21 3.4.4Bean类 22...

    shiro 与 spring 整合、动态过滤链、以及认证、授权.docx

    其提供的 native-session(即把用户认证后的授权信息保存在其自身提供Session 中)机制,这样就可以和 HttpSession、EJB Session Bean 的基于容器的 Session 脱耦,到和客户端应用、Flex 应用、远程方法调用等都可以...

    JAVA上百实例源码以及开源项目源代码

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    JAVA上百实例源码以及开源项目源代码 java开源包2

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    超级有影响力霸气的Java面试题大全文档

    SessionBean在J2EE应用程序中被用来完成一些服务器端的业务操作,例如访问数据库、调用其他EJB组件。EntityBean被用来代表应用系统中用到的数据。  对于客户机,SessionBean是一种非持久性对象,它实现某些在服务器...

    java 面试题 总结

    SessionBean在J2EE应用程序中被用来完成一些服务器端的业务操作,例如访问数据库、调用其他EJB组件。EntityBean被用来代表应用系统中用到的数据。 对于客户机,SessionBean是一种非持久性对象,它实现某些在服务器上...

    shiro框架学习心得

    其提供的native-session(即把用户认证后的授权信息保存在其自身提供Session中)机制,这样就可以和HttpSession、EJB Session Bean的基于容器的Session脱耦,到到和客户端应用、Flex应用、远程方法调用等都可以使用...

    J2EE中文版指南 CHM格式 带全文检索

    SessionBean接口 60 Home接口 62 Remote接口 63 辅助类 63 运行本例 63 二 其他的企业Bean特性 64 访问环境变量 65 企业Bean的比较 66 访问企业Bean的远程对象引用 67 第5章 BMP的例子 68 一.SavingsAccountEJB 68 ...

    java源码包---java 源码 大量 实例

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    J2EE面试题

    c) EJB有Bean管理事务和容器管理事务两种方式 d) BMT方式也可以使用JTA来控制事务边界 参考答案 19) 关于消息确认描述正确的是 ac a) 在创建消息会话的时候能指定消息的确认方式 b) AUTO_ACKNOWLEDGE方式...

    java源码包2

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    java源码包3

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    java源码包4

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    JAVA上百实例源码以及开源项目

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

Global site tag (gtag.js) - Google Analytics