900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > Eclipse jboss搭建EJB项目

Eclipse jboss搭建EJB项目

时间:2024-02-08 06:06:51

相关推荐

Eclipse jboss搭建EJB项目

之前使用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

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

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

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

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

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

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

(3)验证JBoss配置

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

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

server页面如下:

点击 Next

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

启动日志如下:

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

验证成功。

2.Eclipse创建EJBServer项目

创建工程目录如下:

(1)创建EJBServer

File > New > Other > EJB > EJB Project

点击 “Next”

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

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

(2)创建Session Bean > HelloWorld

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

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

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

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

(3)增加方法

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

编辑HelloWorldRemote.java 增加say 方法:

package com.ejb;import javax.ejb.Remote;@Remotepublic interface HelloWorldRemote {String say(String word);}

编辑HelloWorld.java 实现say 方法:

package com.ejb;import javax.ejb.Stateless;/*** Session Bean implementation class HelloWorld*/@Statelesspublic class HelloWorld implements HelloWorldRemote, HelloWorldLocal {/*** Default constructor. */public HelloWorld() {// TODO Auto-generated constructor stub}public String say(String word) {// TODO Auto-generated method stubreturn "Hello " + word + "!";}}

(4)eclipse部署 EJBServer并启动

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

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

启动后控制台日志:

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

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

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

然后手动启动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

创建后的工程如下:

(2)导入Jar包

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

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

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

(3)编写测试类

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

编辑 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!

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

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。