WEB开发网
开发学院软件开发Java EJB2.0有状态SessionBean 阅读

EJB2.0有状态SessionBean

 2010-04-06 00:00:00 来源:WEB开发网   
核心提示: 二、客户端开发packagelavasoft.client;importlavasoft.testejb20yzt.HelloStateful;importlavasoft.testejb20yzt.HelloStatefulHome;importjavax.ejb.CreateExceptio

二、客户端开发

package lavasoft.client; 
import lavasoft.testejb20yzt.HelloStateful; 
import lavasoft.testejb20yzt.HelloStatefulHome; 
import javax.ejb.CreateException; 
import javax.naming.InitialContext; 
import javax.naming.NamingException; 
import javax.rmi.PortableRemoteObject; 
import java.rmi.RemoteException; 
import java.util.Properties; 
/** 
* 客户端代码 
* 客户端会依赖组件接口和Home接口 
* 
* @author leizhimin 2010-3-31 15:54:20 
*/ 
public class TestStatefulSessionBeanClient { 
        public static void main(String[] args) throws NamingException, CreateException, RemoteException { 
                Properties props = new Properties(); 
                props.setProperty("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory"); 
                props.setProperty("java.naming.provider.url", "localhost:1099"); 
                //初始化JNDI上下文环境,因为客户端不知道JBOSS的环境 
                InitialContext ctx = new InitialContext(props); 
                //检索指定的对象 
                Object objref = ctx.lookup("ejb/helloStatefulEJB"); 
                //强制转换为所需类型的对象 
                HelloStatefulHome home = (HelloStatefulHome) PortableRemoteObject.narrow(objref, HelloStatefulHome.class); 
                //通过home对象创建一个组件接口对象 
                HelloStateful hello = home.create("StatefulEJB"); 
                //通过组件接口对象调用业务方法 
                String msg = hello.sayHello(); 
                System.out.println(msg); 
        } 
}

客户端调用结果:

EJB2.0有状态SessionBean

查看原图(大图)

jboss控制台输出:

EJB2.0有状态SessionBean

查看原图(大图)

在此,没有使用本地接口,本地接口规则如下:

EJB2.0有状态SessionBean

查看原图(大图)

出处http://lavasoft.blog.51cto.com/62575/290058

上一页  1 2 3 

Tags:EJB 状态 SessionBean

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接