首页 > 代码库 > ejb学习1-helloword,ejb远程调用

ejb学习1-helloword,ejb远程调用

  • 环境
  1. win7
  2. myeclipse10
  3. jboss4.0.5
  • 创建第一个ejb项目

1. new EJB project

技术分享

 

2.创建一个 sessionbean 接口

技术分享

 

3.编写ejb接口

package com.mo.ejb;

import javax.ejb.Stateless;

@Stateless
public interface HelloWorld {

    String sayHello(String name);
}

 

4.实现接口

 

package com.mo.ejb;

public class HelloWorldImpl implements HelloWorld {

    public String sayHello(String name) {
        return name+" hello world";
    }

}

 

  • 创建一个 java project 来调用这个 ejb 接口

1.创建 java project HelloworldClient,添加对上面HelloWorld.jar的引用和JBOSS Client的jar包($JBOSS_HOME/clent/jbossall-clent.jar),添到ClassPath路径下。

2.编写 client 调用程序

import java.util.Properties;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;

import com.mo.ejb.HelloWorld;

public class Client {
    public static void main(String[] args) throws NamingException {

        InitialContext initialContext = new InitialContext();
        Properties p = new Properties();
//        p.put(Context.INITIAL_CONTEXT_FACTORY,"com.ibm.websphere.naming.WsnInitialContextFactory");
        p.put(Context.INITIAL_CONTEXT_FACTORY,"org.jnp.interfaces.NamingContextFactory");
        p.put(Context.PROVIDER_URL,"localhost:");
        
        HelloWorld ejb = (HelloWorld) initialContext
                .lookup("HelloWorldImpl/remote");

        String name = ejb.sayHello("大哥");
        System.out.println(name);
    }
}

 未完待续。。。

ejb学习1-helloword,ejb远程调用