`
hain
  • 浏览: 455561 次
  • 来自: ...
社区版块
存档分类
最新评论

走进JBoss

    博客分类:
  • ejb
阅读更多
JBoss是一个免费的开源应用服务器,全面支持J2EE,包括JSP,Servlets,EJB。为了让J2EE开发人员快速熟悉JBoss,本文将带您开始JBoss之旅,包括下载,安装,部署应用程序和配置数据源。
 
工具准备
为了运行JBoss,你需要准备以下工具:
  •  JDK 1.3.1或更高。
为了在JBoss上开发应用程序,你可能还需要以下开发工具:
  •  Ant 1.5,一个Java Build Tool。
  •  XDoclet 1.1.2,一个用于生成代码的Javadoc插件。
  •  JBoss Project Template
 
下载
可以从www.jboss.org获得JBoss,JBoss现在有两种供你选择:标准版,包括用于Web页和Servlets的Jetty,和另一个用Tomcat替换Jetty的版本。
安装
解压压缩包到一个指定的目录,例如jboss-3.2.1,解压完毕后,应该生成如下目录:
  • bin:命令和脚本
  • client:客户端jars
  • docs:JBoss的文档
  • lib:服务器端jars
  • server:服务器配置文件
第二步,建立以下环境变量:
  •  JBOSS_HOME:设置为JBoss的安装目录。
  •  JAVA_HOME:设置为JDK的安装目录。
 
服务器配置
JBoss提供了3种服务器配置:
  • Minimal:最小配置,仅仅包括日志,JNDI服务和URL部署扫描器,你可能会在一个不需要J2EE的应用中使用这种配置,或者以该配置为基础自定义配置。
  • Default:缺省配置,包括除了RMI/IIOP和集群的所有J2EE服务。
  • All:这种配置包括所有的JBoss服务。
 
启动
为了启动JBoss,在Windows下:
  • 打开一个命令行窗口;
  • 键入:cd %JBOSS_HOME%\bin;
  • 键入:run [-c default|minimal|all]。
在UNIX下:
  • 打开一个Shell;
  • 键入:cd $JBOSS_HOME/bin;
  • 键入:./run [-c default|minimal|all]。
如果JBoss启动成功,你应该可以看到以下输出:
21:11:16,637 INFO [Server] JBoss (MX MicroKernel) [3.2.1 (build: CVSTag=JBoss_3 _2_1 date=200305041533)] Started in 26s:919ms
一旦服务器启动成功,你就可以通过在浏览器中打开http://localhost:8080/jmx-console/来验证所有的J2EE服务是否都启动了。这是JBoss的管理台,它将显示当前配置下JBoss正在运行的所有服务以及每个服务的详细内容。
JBoss也可以作为NT服务或者Unix服务来运行,可以参考“JBoss 3.0 Quick Start Guide”。
 
关闭
如果在Windows的命令行窗口或者当前的Unix Shell下运行JBoss,只需要简单的按下Ctrl+C即可关闭JBoss。
如果在Windows下不能看见命令行窗口:
  • 打开一个新的命令行窗口;
  • 键入:cd %JBOSS_HOME%\bin;
  • 键入:shutdown –S或者shutdown --server=url。
如果在Unix Shell的后台运行:
  • 打开一个Shell;
  • 键入:cd $JBOSS_HOME/bin;
  • 键入:./shutdown –S或./shutdown --server=url。
 
管理
JBoss通过一个基于Web的控制台管理,你只需在浏览器中键入:http://localhost:8080/jmx-console/即可。查看或更改某一服务的配置,只需简单的点击链接。
通过控制台,你还可以使用一些服务的公开的方法,例如,关闭服务器:
  • 打开控制台;
  • 卷动到“jboss.system”选项;
  • 点击链接“type=server”;
  • 卷动到“void shutdown()”选项;
  • 点击“Invoke”按钮。
 
部署应用程序
在JBoss中部署应用程序是再简单不过的了。简单的复制你的应用程序打包文件:.jar,.war或者.ear到服务器缺省的部署目录下,如果JBoss正在运行,将检测到文件,自动解压,然后装载应用程序。
以下是将一个应用部署到一个缺省的服务器配置的例子,在Windows下:
复制rotmachine.ear到%JBOSS_HOME%\server\default\deploy
在Unix下:
复制rotmachine.ear到$JBOSS_HOME/server/default/deploy
 
在部署过程中,JBoss日志将在控制台窗口输出信息并写入日志,日志文件位于服务器的配置目录。如果部署成功,你应该可以看到以下信息:
22:21:44,730 INFO [MainDeployer] Deployed package: file:/C:/jboss-3.2.1/server/default/deploy/rotmachine.ear
此外,如果你打开JBoss的管理台,可以在“jboss.j2ee”类别下列出你的应用。
 
取消已部署的应用
取消已部署的应用程序比部署应用程序更简单。只要简单的从部署目录中删除相应的应用程序文件,JBoss就会检测到文件已被删除,然后取消已部署的应用。
取消部署一个应用时,JBoss日志将在控制台窗口显示信息,并记录到服务器日志。如果取消部署成功,你应该可以看到以下信息:
22:59:41,500 INFO [MainDeployer] Undeployed file:/C:/jboss-3.2.1/server/default/deploy/rotmachine.ear
 
 
数据源
如果你的应用程序将连接到数据库,你可能需要为数据库配置一个数据源。以下是如何配置一个简单的数据源:
如果你使用的数据库JDBC驱动没有在服务器的lib目录中,复制驱动程序到此目录,然后重新启动JBoss。
为你的数据库创建一个数据源描述文件,例如,oracle-ds.xml:
部署数据源描述文件,方法和部署应用程序相同。
以下是oracle数据源的一个描述文件示例:
<?xml version="1.0" encoding="UTF-8"?>
<datasources>
 <local-tx-datasource>
    <jndi-name>OracleDS</jndi-name>
    <connection-url>jdbc:oracle:thin:@serverip:1521:DB</connection-url>
    <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
    <user-name>dev</user-name>
    <password>secret</password>
 </local-tx-datasource>
</datasources>
其它的数据源描述文件的示例可以在JBOSS_HOME/docs/examples/jca中找到。
 
EJB
为JBoss创建EJB和其他任何J2EE应用服务器一样,但需要一个额外的JBoss使用的EJB部署描述文件jboss.xml,以下是一个示例:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE jboss PUBLIC "-//JBoss//DTD JBOSS//EN"
 "http://www.jboss.org/j2ee/dtd/jboss.dtd">
<jboss>
 <enterprise-beans>
    <session>
      <ejb-name>Processor</ejb-name>
      <jndi-name>ejb/Processor</jndi-name>
    </session>
    <entity>
      <ejb-name>Data</ejb-name>
      <jndi-name>ejb/Data</jndi-name>
    </entity>
 </enterprise-beans>
</jboss>
请注意,和其它J2EE服务器不同,JBoss不需要生成存根文件(stubs and skeletons),它能动态调用EJB。
 
客户端
正如上文所说,JBoss不需要客户端存根(stubs),你只需向客户端提供以下接口:
  • EJB Home接口和Remote接口;
  • 任何在客户端和EJB间传递的对象;
  • 一份JBOSS_HOME/client/jbossall-client.jar的文件拷贝。
以下是连接已部署在JBoss中的EJB的示例:
// 创建环境:
Hashtable env = new Hashtable();
env.put("java.naming.factory.initial",
 "org.jnp.interfaces.NamingContextFactory");
env.put("java.naming.factory.url.pkgs",
 "org.jboss.naming:org.jnp.interfaces");
env.put("java.naming.provider.url", "localhost");
// 创建名字上下文:
InitialContext context = new InitialContext(env);
// 查找Home接口:
CipherHome home = (CipherHome)context.lookup("ejb/org/rotmachine/Cipher");
// 获得Remote接口:
Cipher cipher = home.create();
一个示例应用
为了帮助你更好的了解JBoss,本文包含了一个名为RotMachine的应用程序,请参见资源链接。
RotMachine是一个简单的J2EE应用,包括一个EJB(Stateless Session Bean),一个Web客户端和一个命令行(Command-line)客户端。它使用JBoss的项目模板(Project Template),你可能需要上文提到的一些额外的开发工具。
如果要编译RotMachine的源文件,解压文件到一个指定的目录中,在Windows下:
打开一个命令提示符窗口;
  • 键入:cd  (解压目录);
  • 键入:ant deploy-server。
在Unix下:
  • 打开一个Shell;
  • 键入:cd  (解压目录);
  • 键入:ant deploy-server。
要在命令行客户端测试RotMachine,在Windows下:
  • 打开一个命令提示符窗口;
  • 键入:cd build\bin;
  • 键入:run-client。
在Unix下:
  • 打开一个Shell;
  • 键入:cd build/bin;
  • 键入:./run-client.sh。
要在Web客户端测试RotMachine,请打开浏览器,输入:“http://localhost:8080/rotmachine/index.jsp”,在表单中输入一些文本,点击“Go!”按钮。
 
参考资源
分享到:
评论

相关推荐

    走进 JBoss 服务器

    ### 走进JBoss服务器:全面解析J2EE开发必备技能 #### 一、引言 JBoss是一款免费且开源的应用服务器,以其强大的功能和灵活性,在Java开发领域享有盛誉。尤其对于J2EE(Java 2 Platform, Enterprise Edition)...

    jboss4编程起步.rar

    本教程将带你逐步走进 JBoss 4 的世界,了解其基本概念、安装与配置,以及如何在其中进行编程。 1. **JBoss 4 简介** JBoss 4 是 Red Hat 公司的 JBoss 产品线中的一个版本,发布于2005年。它支持 EJB 2.1、JMS...

    Jboss项目部署文档

    Jboss 项目部署文档 Jboss 项目部署文档是指在 Jboss 服务器上部署项目的详细步骤,包括环境变量的配置、项目打包、配置文件的修改、JNDI 的配置等。以下是 Jboss 项目部署文档的详细知识点: 一、环境变量配置 ...

    JBOSS,JBoss安装部署

    【JBOSS,JBoss安装部署】 JBoss是Red Hat公司开发的一款开源的应用服务器,它基于Java EE(Enterprise Edition)规范,提供了全面的企业级应用程序部署和管理解决方案。本篇文章将详细讲解JBoss的安装和部署过程,...

    jboss 下载(httpwww.jboss.org)

    【JBoss 应用服务器详解】 JBoss 是一个开源的、基于 J2EE(Java 2 Platform, Enterprise Edition)的应用服务器,由全球开发者社区共同维护和开发。它最初以 LGPL 许可协议发布,允许商业应用免费使用。2006年,...

    jboss7.1 linux版本

    JBoss AS 7.1.0.Final是在Linux环境下运行的一款开源Java应用服务器,由Red Hat公司维护。这个版本发布于2012年,它引入了许多改进和新特性,旨在提供更快的启动速度、更高的性能以及更好的模块化。在这个环境中,...

    MyEclipse中配置JBoss

    【标题】:“MyEclipse中配置JBoss” 在IT行业中,MyEclipse是一款深受开发者喜爱的集成开发环境(IDE),尤其对于Java EE项目开发来说,它提供了强大的支持。而JBoss则是一个开源的应用服务器,广泛用于部署和管理...

    JavaEE源代码 jboss-common

    JavaEE源代码 jboss-commonJavaEE源代码 jboss-commonJavaEE源代码 jboss-commonJavaEE源代码 jboss-commonJavaEE源代码 jboss-commonJavaEE源代码 jboss-commonJavaEE源代码 jboss-commonJavaEE源代码 jboss-...

    在jboss上部署web应用

    【JBoss 概述】 JBoss 是一个开源的、基于Java的、全面实现了J2EE规范的应用服务器。它提供了企业级的功能,如EJB(Enterprise JavaBeans)、JMS(Java Message Service)、JTS/JTA(Java Transaction Service / ...

    在IntelliJ idea8中部署Jboss服务器图解

    "在IntelliJ IDEA 8中部署Jboss服务器图解" IntelliJ IDEA 8是 JetBrains 公司开发的一款功能强大且灵活的集成开发环境(IDE),它支持多种programming语言,包括Java、Python、Ruby、PHP等。Jboss则是一款流行的...

    jboss配置入门,jboss的初级配置

    jboss配置入门 jboss系统是一种基于Java的应用服务器,具有高性能、可扩展、安全性强等特点。在本文中,我们将对jboss的基本配置进行介绍,包括其文件夹结构、配置文件、负载均衡配置等。 jboss文件夹结构 jboss的...

    jboss-eap-7.2.6-patch

    【JBoss EAP 7.2.6 补丁包详解】 JBoss Enterprise Application Platform (EAP) 是 Red Hat 提供的一款开源中间件,用于构建、部署和管理企业级 Java 应用程序。JBoss EAP 7.2.6 版本是一个重要的更新,包含了多个...

    jboss-4.0.5.GA.zip

    JBoss是著名的开源Java应用服务器,它基于Java EE(Enterprise Edition)规范,为开发者提供了全面的中间件服务。4.0.5.GA版本是JBoss的一个稳定版本,发布于2006年,适用于那些需要可靠且成熟的Java应用程序部署的...

    jboss热部署配置

    JBoss是一款著名的开源Java应用服务器,它提供了许多企业级服务,包括事务管理、安全性和集群功能。在开发过程中,为了提高效率,我们通常希望在不中断应用服务的情况下更新部署的应用程序,这就是所谓的“热部署”...

    JBoss启动 JBoss启动

    JBoss,作为一款开源的应用服务器,是Java EE(现在称为Jakarta EE)应用程序的重要运行环境。它由Red Hat公司维护,提供了对Web服务、EJB(Enterprise JavaBeans)、JMS(Java Message Service)等标准的全面支持。...

    jboss7开发部署详细文档

    本文档提供了jboss7开发和部署的详细指导,涵盖了jboss7的下载与安装、Eclipse中配置jboss7、项目部署和JNDI获取等方面的内容,旨在帮助开发者快速上手jboss7,并将jboss4.2版本平滑地移植到jboss7。

    jboss7ejb配置文件

    在JBoss 7及以上版本中,对EJB的配置过程相较于之前的版本有所变化,主要涉及到两个关键的配置文件:`jboss-ejb3.xml`和`ejb-jar.xml`。 `ejb-jar.xml`文件是EJB模块的标准配置文件,遵循Java EE规范。在这个文件中...

Global site tag (gtag.js) - Google Analytics