`

EJB3 + GlassFish version 3

阅读更多

开发环境NetBeans 6.9.1

 

step 1:GlassFish v3 添加对应的EJB

写一个

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.helloworld.test;

import javax.ejb.EJBException;

/**
 *
 * @author liuqing
 */
public interface IHelloWorld {

    public String sayHelloWorld(String str) throws EJBException;

}

 

step 2: 在添加本地和远程接口

 

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.helloworld.test;

import javax.ejb.Local;

/**
 *
 * @author liuqing
 */
@Local
public interface ILocalHelloWorld extends IHelloWorld{


}

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.helloworld.test;

import javax.ejb.Remote;

/**
 *
 * @author liuqing
 */
@Remote
public interface IRemoteHelloWorld extends IHelloWorld{

}

 

step 3: 添加实现

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.helloworld.test.impl;

import com.helloworld.test.ILocalHelloWorld;
import com.helloworld.test.IRemoteHelloWorld;
import javax.ejb.EJBException;
import javax.ejb.Stateless;

/**
 *
 * @author liuqing
 */
@Stateless
public class HelloWorldImplBean implements ILocalHelloWorld,IRemoteHelloWorld{

    public String sayHelloWorld(String str) throws EJBException {
        return "Hello ,My name is EJB Server : " + str;
    }

}

 

step 4: 编号测试类

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.test;

import com.helloworld.test.IRemoteHelloWorld;
import java.util.Properties;
import javax.naming.Context;
import javax.naming.InitialContext;

/**
 *
 * @author liuqing
 */
public class Test {

    public static void main(String args[]) throws Exception {

        Properties props = new Properties();
        
        props.put("java.naming.factory.initial", "com.sun.enterprise.naming.impl.SerialInitContextFactory");
        props.put("java.naming.factory.url.pkgs", "com.sun.enterprise.naming");
        props.put("java.naming.factory.state", "com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl");
        //host
        props.put("org.omg.CORBA.ORBInitialHost", "localhost");
        //EJB Port
        props.put("org.omg.CORBA.ORBInitialPort", "3700");
        Context ctx = new InitialContext(props);
        ctx.lookup("com.helloworld.test.IRemoteHelloWorld");
        IRemoteHelloWorld hello = (IRemoteHelloWorld)ctx.lookup(IRemoteHelloWorld.class.getName());
        System.out.println(hello.sayHelloWorld("Welcome to GlassFish v3"));
    }

}

   

final 在添加 *.jar 包

 

glassfish-naming.jar   //添加JNDI 包

gf-client-module.jar    //客户端模块包

gf-ejb-connector.jar   //连接ejb 包

gf-client.jar      

 

运行结果

 

init:
deps-jar:
compile-single:
run-main:
Nov 19, 2010 3:32:39 PM com.sun.enterprise.transaction.JavaEETransactionManagerSimplified initDelegates
INFO: Using com.sun.enterprise.transaction.jts.JavaEETransactionManagerJTSDelegate as the delegate
Hello ,My name is EJB Server : Welcome to GlassFish v3
BUILD SUCCESSFUL (total time: 7 seconds)
分享到:
评论

相关推荐

    在ArcGIS中应用EJB的实例,用无状态BEAN连接地图服务器java.zip

    完成Bean的定义和配置后,我们可以将此EJB部署到支持Java EE的服务器上,如Tomcat、Glassfish或JBoss。一旦部署成功,其他应用程序可以通过JNDI(Java Naming and Directory Interface)查找并调用这个Bean,进而...

    EJB 知识与运行环境设置(笔记)

    <?xml version="1.0" encoding="UTF-8"?> ${basedir}/src"/> ${env.JBOSS_HOME}"/> ${basedir}/build"/> ${build.dir}/classes"/> ${jboss.home}/client"> *.jar"/> ${build.classes.dir}"/> ...

    Apress.Beginning.Java.EE.6.with.GlassFish.3.2nd.Edition

    Beginning Java EE 6 Platform with GlassFish 3, Second Edition is this first tutorial book on the final (RTM) version of the Java EE 6 Platform. Step by step and easy to follow, this book describes ...

    j2ee邮件收发系统

    这一层通常由JavaBeans或EJB(Enterprise JavaBeans)实现,它们封装了邮件处理的具体逻辑,如验证用户身份、构建邮件头信息、调用SMTP(Simple Mail Transfer Protocol)服务发送邮件,以及使用IMAP(Internet ...

    J2EE入门培训

    3. **EJB**:EJB是J2EE中的企业级组件,提供了一种标准的方式来创建可复用的、分布式的、安全的服务器端组件,包括会话bean、实体bean和消息驱动bean。 4. **JMS**:JMS允许应用程序创建、发送、接收和读取消息,...

    javajdk.zip

    安装完成后,你可以通过运行`java -version`和`javac -version`命令来验证JDK是否安装成功并确定其版本。 为了保持最新的稳定性和安全性,定期更新JDK是非常重要的。Java的更新通常会修复已知的安全漏洞,并可能...

    JDK和J2EE的安装.rar

    4. **验证安装**:打开命令行,输入`java -version`和`javac -version`,如果显示出正确的Java版本信息,说明JDK已成功安装。 【J2EE安装】 1. **获取J2EE服务器**:常见的J2EE服务器有Tomcat、GlassFish、WildFly...

    有关j2ee安装(java)

    为了验证安装是否成功,可以在命令行输入`java -version`,如果返回的是你刚刚安装的Java版本信息,那就说明Java已经正确安装。 接下来,我们需要配置环境变量。环境变量`JAVA_HOME`应指向JDK的安装目录,例如`C:\...

    搭建基于Linux下的J2EE开发平台

    同时,确认`javac`编译器和`java`解释器能正常运行,通过`java -version`和`javac -version`检查版本。 4. **集成开发环境(IDE)**:虽然可以使用命令行工具进行开发,但大多数开发者更倾向于使用集成开发环境,如...

Global site tag (gtag.js) - Google Analytics