论坛首页 入门技术论坛

ejb_HelloWorld

浏览 1349 次
锁定老帖子 主题:ejb_HelloWorld
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2010-03-02   最后修改:2010-03-02

 

 

 

 

 

Ejb 的首次搭建及向外发布接口

 

一环境搭建

  *jboss jems-installer-1.2.0.GA(jboss安装文件 ,jboss包含了 web容器与ejb的容器)

  *jdk选择1.5, 之前用的1.6有点问题后来选用了jdk1.5

  *设置变量值

定义环境变量JAVA_HOME  变量值D:\java\Java\jdk1.5.0_06(JDK的安装路径),之前jdk的安装路径是D:\Program Files\Java\jdk1.5.0_06,因为 jems-installer-1.2.0.GA安装对Program Files文件名之间的空白

不识别所以将Program Files改为了java

 *安装jems-installer-1.2.0.GA过程中将其中默认的单选按钮default改为ejb3

 *定义变量JBOSS_HOME 变量值D:\jboss-4.0.5.GA (我的jboss安装路径) 

安装后我的 jboss 的ejb发布路径:D:\jboss-4.0.5.GA\server\default\deploy

二.开发一个ejb
在myeclips中new -> ejb project ->选中javaee5.0-ejb3.0
2.定义ejb接口

 

public interface HelloWorld {
 
 
 public String sayHello(String name); 

}

 

 


3.定义接口实现类

 

import javax.ejb.Remote;
import javax.ejb.Stateless;
import javax.persistence.Entity;


@Stateless
@Remote
public class HelloWorldImpl implements HelloWorld {
 private String name;
 
 public String sayHello(String name) {
  
  this.name=name;
  System.out.println("name:"+this.name);
  return null;
 }
 

 

 
}

 

 

 


4.为了使其成为一个ejb,需要在实现类上加入注解 @Stateless @Remote
5.发布ejb ,将ejb 接口和实现都导出 选择 export 选择java->jar 至$JBOSS_HOME\server\default\deploy
6.在bin下运行run.bat启动jboss容器
7.可以通过http://localhost:8080/jmx-console/ ->jndiView ->list()->invoke按钮,查找有无与实现类同名的ejb
8.导出接口的jar包供客户端使用

 

 

 

 

 

 

 

三.开发一个客户端
1.new一个普通的java工程
2.导入jar包,可以采用user_library ,导入$JBOSS_HOME\client所有的jar
3.导入ejb接口jar包
4.在src下配置jndi.properties
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
java.naming.provider.url=localhost
5.客户端调用ejb

 

 

 

public class Test {

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

  InitialContext context=new InitialContext();
  
  HelloWorld hw=(HelloWorld)context.lookup("HelloWorldImpl/remote");
 
  String s=hw.sayHello("张三");
  System.out.println("client:"+s);

  
 }

}

 

 

 

 

 

 

 

 

 

 

 

 

论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics