Eclipse jboss搭建EJB项目

导读:本篇文章讲解 Eclipse jboss搭建EJB项目,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

        之前使用Idea搭建了EJBDemo项目,使用的JBoss7版本,但对于低版本的Jboss支持并不太好,经常会有莫名其妙的错误和不兼容信息。下面使用Eclipse搭建一个Demo。

目录

一、工具版本

二、搭建Demo

1.Eclipse 配置jboss

(1)确认Eclipse 是否安装JBoss Tools 插件

(2)配置本地 jboss-5.1.0.GA

(3)验证JBoss配置

2.Eclipse创建EJBServer项目

(1)创建EJBServer

(2)创建Session Bean > HelloWorld

(3)增加方法

(4)eclipse部署 EJBServer并启动

 (5)另一重部署方式:JBoss中部署

3.Eclipse创建客户端EJBClient项目并测试

(1)创建java工程EJBClient

 (2)导入Jar包

(3)编写测试类


一、工具版本

eclipse version:Oxygen.3a Release (4.7.3a)(Eclipse下载地址:Eclipse Packages | The Eclipse Foundation – home to a global community, the Eclipse IDE, Jakarta EE and over 350 open source projects…

Jboss version: jboss-5.1.0.GA( JBoss下载地址:JBoss Application Server Downloads – JBoss Community

jdk version: jdk1.7.0_64

二、搭建Demo

1.Eclipse 配置jboss

 本地安装 jboss-5.1.0.GA 参考 jboss-5.1.0.GA 安装详细步骤_Jandey.柳的博客-CSDN博客

(1)确认Eclipse 是否安装JBoss Tools 插件

工具栏 Window > Preferances > Server > Runtime Environment > Add

Eclipse jboss搭建EJB项目

Eclipse jboss搭建EJB项目

 在上面打开的页面中并没有 JBoss 目录,说明Eclipse缺少插件,下面安装一下:

工具栏 Help > Eclipse marketplace,输入 jboss查找,找到 JBoss Tools 插件,点击“Install” 安装即可,安装完成会提示重启Eclipse。

Eclipse jboss搭建EJB项目

 安装完成后Server中就会有JBoss的选项了:

Eclipse jboss搭建EJB项目

(2)配置本地 jboss-5.1.0.GA

Eclipse jboss搭建EJB项目

Eclipse jboss搭建EJB项目

 确认JavaSE-1.7是指向的本地JDK1.7

Eclipse jboss搭建EJB项目

这样本地的JBOSS就配置完成了。

(3)验证JBoss配置

Eclipse 下方工具栏找到 Servers,如下:

Eclipse jboss搭建EJB项目

空白处鼠标右击出现菜单, New > Server

Eclipse jboss搭建EJB项目

server页面如下:

Eclipse jboss搭建EJB项目

点击 Next

Eclipse jboss搭建EJB项目

 先不配置项目,只启动JBoss,点击 Finish 完成。选择服务器右击,再点击 start 启动:

Eclipse jboss搭建EJB项目

 启动日志如下:

Eclipse jboss搭建EJB项目

浏览器打开链接:http://127.0.0.1:8080/

Eclipse jboss搭建EJB项目

 验证成功。

2.Eclipse创建EJBServer项目

创建工程目录如下:

Eclipse jboss搭建EJB项目

(1)创建EJBServer

 File > New > Other  > EJB > EJB Project

Eclipse jboss搭建EJB项目

Eclipse jboss搭建EJB项目

Eclipse jboss搭建EJB项目

 点击 “Next”

Eclipse jboss搭建EJB项目

 点击 Next,在页面中勾选“Generate ejb-jar.xml deployment descriptor”

Eclipse jboss搭建EJB项目

 点击 Finish 完成,生成项目如下:

Eclipse jboss搭建EJB项目

(2)创建Session Bean > HelloWorld

ejbModule目录是编写JAVA源码的目录。

在ejbModule 目录上右键【New】>【Other】>【EJB】

Eclipse jboss搭建EJB项目

Eclipse jboss搭建EJB项目

 在页面中编辑报名和类名:

Eclipse jboss搭建EJB项目

 点击 Finish,然后会自动生成文件:

Eclipse jboss搭建EJB项目

(3)增加方法

上述生成的三个文件中,HelloWorld.java是实现类,HelloWorldRemote.java是远程调用接口。HelloWorldLocal.java是本地调用接口,暂时不用管。

编辑HelloWorldRemote.java 增加say 方法:

package com.ejb;

import javax.ejb.Remote;

@Remote
public interface HelloWorldRemote {
	
	String say(String word);
}

 编辑HelloWorld.java 实现say 方法:

package com.ejb;

import javax.ejb.Stateless;

/**
 * Session Bean implementation class HelloWorld
 */
@Stateless
public class HelloWorld implements HelloWorldRemote, HelloWorldLocal {

    /**
     * Default constructor. 
     */
    public HelloWorld() {
        // TODO Auto-generated constructor stub
    }

	public String say(String word) {
		// TODO Auto-generated method stub
		return "Hello " + word + "!";
	}

}

(4)eclipse部署 EJBServer并启动

在刚才添加的JBoss服务中增加项目即可:

Eclipse jboss搭建EJB项目

Eclipse jboss搭建EJB项目

然后启动JBoss,如下“小虫子”的标识是 Debug启动,可代码调试,“播放”标识是 run启动。

Eclipse jboss搭建EJB项目

 启动后控制台日志:

Eclipse jboss搭建EJB项目

 (5)另一重部署方式:JBoss中部署

也可以在JBoss中部署,需要将EJBServer项目导出Jar 包,放到JBoss安装目录下

C:\Java\JBoss\jboss-5.1.0.GA\server\default\deploy

Eclipse jboss搭建EJB项目

Eclipse jboss搭建EJB项目

 然后手动启动JBoss,目录 C:\Java\JBoss\jboss-5.1.0.GA\bin 下的文件 run.bat(启动)、shutdown.bat(停止)。

3.Eclipse创建客户端EJBClient项目并测试

(1)创建java工程EJBClient

客户端创建一个普通的Java项目就行 File > New > Other > Java Project

Eclipse jboss搭建EJB项目

Eclipse jboss搭建EJB项目

 创建后的工程如下:

Eclipse jboss搭建EJB项目

 (2)导入Jar包

想要引用EJBServer项目目中的远程接口,必不可少的两个jar包:

第一个 > jbossall-clent.jar :从JBoss安装包中获取,目录> C:\Java\JBoss\jboss-5.1.0.GA\client 中;

Eclipse jboss搭建EJB项目

第二个 > EJBServer.jar : 就是EJBServer项目Jar包,需要先导出EJBServer项目Jar包,在引用到EJBClient项目。按照上面部署时的打包方式Export生成一个EJBjar包,然后导入到client项目。我在EJBServer下面创建了一个outjar 文件夹,我把EJBServer.jar导入到了这里。

(3)编写测试类

在src下创建包 com.ejb.client,下面创建Java类HelloWorldTest.java

Eclipse jboss搭建EJB项目

编辑 HelloWorldTest.java 内容如下:

package com.ejb.client;

import java.util.Properties;

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

import com.ejb.HelloWorldRemote;

public class HelloWorldTest {

	public static void main(String[] args) {
		try {
            Properties props = new Properties();
            props.setProperty("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");
            props.setProperty("java.naming.provider.url", "localhost:1099");
            props.setProperty("java.naming.factory.url.pkgs", "org.jboss.naming");

            System.out.println(">>初始化上下文 InitialContext");
            InitialContext ctx = new InitialContext(props);

            System.out.println(">>查找远程接口 lookup  ");
            String serviceName = "HelloWorld/remote";
            HelloWorldRemote helloWorld = (HelloWorldRemote) ctx.lookup(serviceName);
            
            System.out.println(">>调用say方法");
            String result = helloWorld.say("World");
            
            System.out.println(">>输出结果 = " + result);
            
        } catch (NamingException e) {
            e.printStackTrace();
        }
	}

}

执行结果如下:

>>初始化上下文 InitialContext
>>查找远程接口 lookup  
log4j:WARN No appenders could be found for logger (org.jnp.interfaces.TimedSocketFactory).
log4j:WARN Please initialize the log4j system properly.
>>调用say方法
>>输出结果 = Hello World!

上面都是我按照实际步骤执行进行的截图,希望大家都能成功!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/62154.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!