EJB 环境配置

来源:互联网 发布:mac查看软件安装目录 编辑:程序博客网 时间:2024/04/29 20:35
 -------------========EJB 环境配置========---------------
1. 环境配置
1.1 解压缩JBoss服务器
解压缩jboss-4.2.2.GA,存放目录:D:/Software/jboss-4.2.2.GA

1.2 解压缩JBoss IDE开发工具
解压缩JBossIDE-2.0.0.Beta2-Bundle-win32,存放目录:D:/Software/JBossIDE-2.0.0.Beta2-Bundle-win32

1.3 向JBoss IDE中集成JBoss服务器
1.3.1 在工具条中点击JBoss server的图标->new server --> Jboss inc --> JBoss As 4.0 --> next

配置服务器信息:
name:JBoss
Runtime information home Directory:D:/Software/jboss-4.2.2.GA(JBoss服务器安装目录)
JRE:jdk1.5.0_09(在喜好选项中配置window --> Java --> Installed JREs,选择添加,选择jdk1.5暂时具有更好的兼容性)
Configuration:all(选择JBoss启动用户,使用all支持EJB)

1.3.2 选择JBoss配置服务
在JBoss服务器图标 --> set Default server --> 选中我们刚才设置的服务器;

1.3.3 启动JBoss服务器
确保可以正常启动JBoss服务器;

1.3.4 以上配置完成,系统会自动的在Package Explorer中会存在一个Server的工程;

1.3.5 处理jboss-ejb3x.jar
拷贝:/jboss-4.2.2.GA/client/jboss-ejb3x.jar
到:/jboss-4.2.2.GA/server/all/deploy/ejb3.deployer
这里缺少这个包,如果不添加新建工程会出现错误;

-------------========My frist EJB project========---------------
2 建立HelloEJB

2.1 服务器端配置
2.1.1 建立EJB 3.0工程
在Package Explorer中建立一个EJB3.0 --> EJB 3.0 Project -->填写工程名称 -->select a jboss
Configuration ,选择一个EJB server,选择刚才配置的服务器;--> finished;

2.1.2 在src中添加包,比如com.ejb

2.1.3 添加Ejb Session bean
在New --> EJB 3.0 -->选择Session Bean -->next -->填写一个Bean name:Hello;
这是系统会自动的在com.ejb添加一个Hello.java(远程接口)和HelloBean.java(实现类)文件

2.1.4 为Hello.java添加一个方法:
public String say(String name);

为HelloBean.java添加一个实现方法:
public String say(String name) {
 String temp = "----="+ name + "=----,Hello;this is my frist EJB project";
 System.out.println(temp);
 return temp;
}

2.1.5 发布EJB组件
2.1.5.1 启动Jboss server
2.1.5.2 发布EJB组件
在工程上点击右件选择Export -->Java -->JAR file
发布前:把右上角x.classpath和x.project选项除去;
发布到Jboss路径:D:/Software/jboss-4.2.2.GA/server/all/deploy/hello.jar(一定要选择在all用户下)

--到此Ejb 组件发布完成,下面我们继续发布客户端程序;

2.2 建立客户端程序
2.2.1 打开MyEclipse程序建立一个Web project程序

2.2.2 导入JBoss client 下jbossall-client.jar文件(甚至可以把clien下的所有文件都拷贝,建议只拷贝一个jbossall-client.jar);位置:D:/Software/jboss-4.2.2.GA/client,导入到web project/WEB-INF/lib下;
--其实只使用jbossall-client.jar文件
同时导入hello.jar(刚才发布的Ejb组件包),位置:D:/Software/jboss-4.2.2.GA/server/all/deploy/hello.jar,导入到web project/WEB-INF/lib下;

2.2.3 写客户端程序调用远程EJB组件
2.2.3.1 用java文件调用,建立一个java文件,内容如下:
package com.ejb;

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

public class ejbTest {

 /**
  * @param args
  * @throws Exception
  */
 public static void main(String[] args) throws Exception {
        new ejbTest();
 }
 
 public ejbTest() throws Exception {
  Context ct = new InitialContext();
  Hello hello = (Hello) ct.lookup("HelloBean/remote");
  System.out.println(hello.say("Jack"));
 }

}

--成功调用后,可以在客户端和服务器同时看到相应的输出信息;

2.2.3.2 采用页面调用
修改index.jsp页面的内容如下:
...
//添加处理代码
<%
    //加载远程接口配置
    Properties pro = new Properties();
    pro.setProperty("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");
    pro.setProperty("java.naming.factory.url.pkgs", "org.jboss.naming:org.jnp.interfaces");
    pro.setProperty("java.naming.provider.url", "localhost:1099");
    Context ct = new InitialContext(pro);
    //实例化对象
    Hello hello = (Hello)ct.lookup("HelloBean/remote");
    String ejbContent = hello.say("Kevinb");
%>

在<body>ejbContent:<%=ejbContent %></body>

--连接成功后可以在客户端页面和服务器中都可以到相应的输出信息;

3.处理JBoss工程移动位置后加载错误(找不到lib)
3.1 问题:出现错误主要的原因是新位置和老位置的JBoss位置不同造成,所以工程下的EJB3 lib不能得到有效的加载;
3.2 解决方法:
    打开工程右键-->property-->Java build path-->libraries-->JBoss EJB3 libraries-->选中-->Edit-->重新指定JBoss服务器;

原创粉丝点击