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();
//通过远程接口来调用方法
分享到:
相关推荐
`EJBClient`可能是示例中的客户端应用,它负责调用SessionBean的方法。客户端通常需要引用EJB的远程接口,并通过JNDI查找找到Bean的实例。在EJB3.0中,这通常涉及以下步骤: - 导入远程接口。 - 使用`...
【ejb入门录像 sessionBean】是针对企业级Java应用(Enterprise JavaBeans,简称EJB)技术的初学者设计的一段教学视频。EJB是Java EE(Java Platform, Enterprise Edition)框架的重要组成部分,它提供了一种标准的...
为了验证Session Bean的功能,我们可以通过创建一个简单的Servlet来调用Session Bean的方法。在JBuilder2007中新建一个动态Web项目,然后创建一个Servlet,通过编写相应的代码来调用Session Bean中的`sayHello()`...
总结,EJB2 Session Bean是Java企业级开发中的重要组成部分,它提供了一种组织和执行业务逻辑的方法,支持本地和远程调用,具有完善的事务管理和生命周期管理机制。通过EJBClient,客户端可以方便地与Session Bean...
在"ejb sessionbean demo"中,我们主要探讨的是如何使用EJB的Session Bean进行开发和演示。Session Bean通常用于实现业务逻辑,它们可以是无状态的,意味着每个请求都会创建一个新的Bean实例,不保留任何先前会话的...
本示例将探讨如何实现EJB的分布式远程调用,这是一种让不同网络节点上的软件组件能够相互通信的技术。 在Java EE中,EJB允许开发者创建业务逻辑组件,这些组件可以被其他应用或服务远程调用。EJB分为三种类型:会话...
2. 初始化:服务器调用Session Bean的初始化方法(@PostConstruct注解的方法)来准备Bean,执行必要的设置。 3. 使用:客户端调用Session Bean的方法,执行业务逻辑。 4. 销毁:当不再需要Session Bean或者服务器...
这个例子展示了如何在客户端使用EJB注解查找SessionBean,然后调用其方法获取所有记录并创建新的记录。在实际应用中,你还需要处理异常,进行事务管理,优化查询性能等。 这份资料中的例子将涵盖如何设置EJB项目,...
Tomcat6远程调用GlassFish V2的session bean GlassFish V2 是一个比较完整的ejb3服务器,性能也有了很大的提高,因此最近试用了一下,并通过Tomcat进行了分布式调用。 Session Bean: ...
- 创建:当客户端第一次调用Session Bean时,容器会创建一个新的实例。 - 激活:容器会调用Bean的`ejbCreate`方法进行初始化。 - 使用:客户端可以通过接口调用Bean的方法。 - 停用:如果Bean是无状态的,每次...
- **客户端代码**:展示了如何通过JNDI查找和调用Session Bean的方法。 通过这两个示例,你可以学习如何在实际项目中创建和使用这两种类型的Session Bean,以及它们在处理并发请求和资源管理方面的差异。有状态...
Session Bean是Enterprise JavaBeans (EJB)的一种重要组件,它主要负责实现业务逻辑,处理客户端的请求。Session Bean不直接映射数据库中的共享数据,其状态是非持久化的,不需要写入数据库。它们由EJB容器管理,...
本文将深入探讨如何在WebSphere环境中远程调用EJB组件,同时介绍ejb3.0版本的一些关键特性,以及 ejb 开发实例和相关框架。 **一、EJB 3.0简介** EJB 3.0是EJB规范的一个重大改革,引入了更加轻量级和简化的设计,...
EJB规范定义了多种类型的beans,如Entity Bean、Message Driven Bean以及我们关注的Session Bean。本压缩包提供了有状态和无状态两种Session Bean的示例代码,帮助开发者理解和掌握这两种类型的区别和应用场景。 1....
### EJB 基于Java的远程方法调用(RMI)技术 #### 一、EJB概述 **Enterprise JavaBeans (EJB)** 是一种基于Java的...此外,通过RMI技术的支持,EJB能够实现高效的远程调用,使得跨系统的组件交互变得更加简单高效。
总之,"itfuture_sessionbean"的第二部分是一个关于Java EE中Session Bean的深入学习资源,结合JBulider这一强大的开发工具,旨在帮助开发者掌握Session Bean的创建、配置和管理,提升他们在企业级应用开发中的技能...
2. **创建Session Bean**: 如果是Session Bean,客户端通过Home接口的`create()`方法创建一个Remote接口实例,这个过程可能涉及远程方法调用(RMI)。 3. **调用业务方法**: 客户端通过Remote接口调用EJB的业务方法...
- Remote Method Invocation(RMI):这是EJB之间最基础的调用方式,允许一个EJB实例调用另一个EJB的远程接口方法。 - Local Interface:如果调用方和被调用的EJB在同一应用服务器内,可以使用本地接口,这样可以...