`
izuoyan
  • 浏览: 9373774 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

JBoss目录结构说明和功能介绍

阅读更多
转自:http://www.unionsky.net/forum/showthread.asp?threadid=40&page=1

本文节选自O'Reilly的《JBoss EJB Workbook》,现在提供英文版的免费下载。
http://www.oreilly.com/catalog/entjbeans3/workbooks/ejbwJboss.Files.zip
这是我的阅读笔记,因为时间和水平有限,难免会有一些错误,还请各位不吝指正。
你可以通过email联系我,kitta4587@163.com。

本文将尝试指导你通过一些必要的步骤来安装一个完全可运行的JBoss服务器,并顺便了
解一些有关JBoss的其他信息。
如果你需要有关JBoss配置的更详细的信息,可以访问JBoss的web站点,
http://www.jboss.org,在那里你可以找到丰富的在线文档。


关于JBoss


JBoss是全世界开发者共同努力的成果,一个基于J2EE的开放源代码的应用服务器。在不
到12个月的时间里有一百万以上的拷贝被下载。JBoss是第一位的J2EE应用服务器。

JBoss完全实现了J2EE的服务栈:
* EJB (Enterprise JavaBeans)
* JMS (Java Message Service)
* JTS/JTA (Java Transaction Service / Java Transaction API)
* Servlet and JSP (JavaServer Pages)
* JNDI (Java Naming and Directory Interface)

它还提供一些高级特性,比如集群、JMX、Web Service。
它还整合了IIOP(Internet Inter-ORB Protocol)。

因为JBoss代码遵循LGPL许可,你可以在任何商业应用中免费使用它,而不用支付费用。
LGPL - GNU Lesser General Public License,
参考http://www.gnu.org/copyleft/lesser.txt

安装JBoss应用服务器


首先,确定你已经安装了J2SE JDK 1.3或者更高的版本,并且进行了正确的配置。
这很基础,你需要正确配置以下环境变量:
* JAVA_HOME
* CLASSPATH
* PATH

然后到JBoss的web站点(http://www.jboss.org)下载JBoss的二进制版本。
你会发现所有当前的二进制版本分为zip和tar.gz格式的文件。
zip适合Windows系统,而tar.gz适合Unix类的系统,选择你最适合你的版本。

解压缩你下载的文件到一个目录(你自己选择),在windows下,你可以是使用winzip等
工具,在Unix下,你可以用下面的命令:
$ gunzip jboss-3.2.0.tar.gz
$ tar xf jboos-3.2.0.tar

设置JBOSS_HOME环境变量,为你的JBoss的安装目录。

然后到$JBOSS_HOME/bin目录中,运行“启动脚本”:
Unix:
$ ./run.sh
Windows:
c:\jboss-3.2.0\bin>run.bat

实例,JBoss二进制版本为3.2.2,J2SDK版本为1.4.1:

windows 2k系统下:
J2SDK安装在c:\j2sdk,JBoss安装在c:\jboss,环境变量的设置如下:
JAVA_HOME=C:\j2sdk
CLASSPATH=%CLASSPATH%;%JAVA_HOME%\lib\*.jar;%JAVA_HOME%\jre\lib\*.jar
JBOSS_HOME=C:\jboss
PATH=%PATH%;%JAVA_HOME%\bin;%JBOSS_HOME%\bin

unix类系统下:
J2SDK安装在/opt/j2sdk,JBoss安装在/opt/jboss,环境变量的设置如下:
JAVA_HOME=/opt/j2sdk
CLASSPATH=$CLASSPATH:$JAVA_HOME\lib\*.jar:$JAVA_HOME\jre\lib\*.jar
JBOSS_HOME=/opt/jboss
PATH=$PATH:$JAVA_HOME\bin:$JBOSS_HOME\bin


探索JBoss的目录结构


安装JBoss会创建下列目录结构:

表1.1 JBoss的目录


------------------------------------------------------------------------------
目录 描述
------------------------------------------------------------------------------
bin 启动和关闭JBoss的脚本
client 客户端与JBoss通信所需的的Java库(JARs)
docs 配置的样本文件(数据库配置等)
doc/dtd 在JBoss中使用的各种XML文件的DTD。
lib 一些JAR,JBoss启动时加载,且被所有JBoss配置共享。
(不要把你的库放在这里)
server 各种JBoss配置。每个配置必须放在不同的子目录。子目录的
名字表示配置的名字。
JBoss包含3个默认的配置:minimial,default和all。
server/all JBoss的完全配置,启动所有服务,包括集群和IIOP。
server/default JBoss的默认配置。
在没有在JBoss命令航中指定配置名称时使用。
server/default/conf JBoss的配置文件。下一节你会学习到更多关于其内容的知识。
server/default/data JBoss的数据库文件。比如,嵌入的数据库,或者JBossMQ。
server/default/deploy JBoss的热部署目录。放到这里的任何文件或目录会被JBoss自动
部署。EJB、WAR、EAR,甚至服务。
server/default/lib 一些JAR,JBoss在启动特定配置时加载他们。
(all和minimial配置也包含这个和下面两个目录。)
server/default/log JBoss的日志文件。
server/default/tmp JBoss的临时文件。
------------------------------------------------------------------------------

如果你想要定义自己的配置,要先在server目录下创建一个新的包含适当文件的子目录。
启动时可用-c参数指定要启动的配置:
Windows:
C:\jboss-3.2.0\bin>run.bat -c config-name
Unix
$ ./run.sh -c config-name

JBoss配置文件


就像上一节说的,JBoss的server目录可以包含任意数目的目录,每个表示一个不同的
JBoss配置。

server/config-name/conf目录包含JBoss的配置文件。
表1.2给出了这些不同的文件的用途:

表1.2、JBoss的配置文件

------------------------------------------------------------------------------
文件 描述
------------------------------------------------------------------------------
jacorb.properties JBoss IIOP 配置
jbossmq-state.xml JBossMQ(JMS的实现)用户配置
jboss-service.xml 启动时运行的JBoss的服务的定义(class loader,JNDI,
deployer等)
log4j.xml Log4J的配置
login-config.xml JBoss安全配置(JBossSX)
standardjaws.xml JBoss的遗留CMP 1.1引擎的默认配置。包含对各种数据库的
JDBC-to-SQL的映射信息,默认CMP设置,日志配置等。
standardjbosscmp-jdbc.xml 除了被用于JBoss的CMP 2.0引擎之外,
与standardjaws.xml相同,
------------------------------------------------------------------------------

JBoss中的部署


JBoss中的部署过程非常的简单、直接。在每一个配置中,JBoss不断的扫描一个特殊的目
录的变化:$JBOSS_HOME/server/config-name/deploy

此目录一般被称为“部署目录”。

你可以把下列文件拷贝到此目录下:
* 任何jar库(其中的类将被自动添加到JBoss的classpath中)
* EJB JAR
* WAR (Web Appliction aRrchive)
* EAR (Enterprise Application aRchive)
* 包含JBoss MBean定义的XML文件
* 一个包含EJB JAR、WAR或者EAR的解压缩内容,并以.jar、.war或者.ear结尾的目录。

要重新部署任何上述文件(JAR、WAR、EAR、XML等),用新版本的文件覆盖以前的就可以
了。JBoss会根据比较文件的时间发现改变,写在以前的文件,然后部署新的文件。
要重新部署一个目录,更新他的修改时间即可,比如touch。

迅速浏览JBoss的内部结构


从3.0版本开始,JBoss已经被围绕一些非常强大的概念来构建,允许用户自定义和调整他
们的服务器,而不局限于J2EE。
灵活性允许JBoss可以用于不同的环境,范围从嵌入式系统到非常大的服务器集群。

下面几节将简要的介绍这些概念中的一部分。


微内核架构


JBoss基于一个微内核设计,即组件可以在运行时插入以扩展它的行为。
这个设计非常适合J2EE平台,一个本质上基于服务的平台。这个平台包含持久化,事务,
安全,名称,消息,日志等服务。

其他应用服务器一般象单片集成电路一样,它们总是包含所有J2EE平台的服务。JBoss采
用完全不同的方法:每个服务像组件一样被热部署于一个非常简洁的内核之上,称为
JBoss Server Spine。此外,用户被鼓励去实现他们自己的运行于JBoss上的服务。

因此,JBoss应用服务器不限于J2EE应用,他被频繁的用于构建任何需要强大且可靠基础
的应用。因此,JBoss的核心也被认为是WebOS。

图1.1 JBoss Server spine和一些热部署的服务

JMS User Service A EJB Container
(JBossMQ) | |
| | |
+-------------------------------------------------+
| |
| JBoss Server Spine |
| |
+-------------------------------------------------+
| | |
JNDI JNDI |
(JBossNS) (JBossNS) Servlet/JSP

JBoss Server Spine 基于Sun的JMX(Java Managerment eXtensions)规范,
以标准的方式使任何已部署的组件可以被管理。
按照JMX习惯中,JBoss中一个已部署的服务被称为一个MBean(a managed bean)。

更多关于JMX规范的信息可以在Sun的web站点找到:
http://java.sun.com/products/JavaManagement

热部署


自从2.0发布版本,JBoss已经因是第一个支持热部署和重部署的基于J2EE的应用服务器而
著称,而那时很多应用服务器还需要重新启动以更新一个应用程序。
感谢微内核架构和革命性的Java类加载器,JBoss 3.0和以后的发布版本进一步推动这种
逻辑。不但可以热部署和重新部署应用程序,而且他们可以热部署任何服务,并且跟踪服
务间的依赖。
这些特性使JBoss可被用于非常苛刻的环境,比如电信系统。


网络引导


JBoss可以在网络的任何位置引导自己和你的应用程序,只要为JBoss Server Spine指定
一个简单的URL。这允许你从一个中央web服务器管理一个JBoss节点集群的全部配置。这
给人深刻印象的机动性使新服务器的部署非常的简单。
JBoss的bootstrap代码只有大约50k,它适合很多嵌入式系统。

分开的调用者


JBoss完全的分离了协议的处理器,从目标服务接收的调用最终为请求提供服务。因此,
当一个给定协议的新的处理器(称为一个JBoss的调用者)被部署到JBoss,可以自动的通
过这个新的调用传送器到达所有已存在的服务和应用程序。
JBoss 3.2目前支持下列类型的调用者:
* RMI
* RMI over HTTP
* IIOP
* JMS
* SOAP
* HA-RMI(Clustering over RMI)
分享到:
评论

相关推荐

    JBoss5管理手册

    2. JBoss 目录结构说明 - bin:包含启动(run.bat)和关闭(shutdown.bat)JBoss的脚本。 - client:存放与JBoss交互所需的Java库(JARs)。 - docs:文档和样本配置文件,如数据库配置。 - docs/dtd:JBoss使用...

    Jboss7快速入门手册

    1. 目录结构:熟悉Jboss7的目录结构对于理解如何组织和部署应用至关重要。 2. 启动Jboss:介绍了如何启动Jboss服务,包括Standalone模式和Domain模式的启动方法。 3. 安装JDBCDriver:描述了如何在Jboss中安装和配置...

    jboss 中文开发文档

    - **服务器结构**:详细介绍了 JBoss 服务器的目录结构及其组成部分。 - **主目录**:解释了 JBoss 安装目录下的各个子目录的作用。 - **服务器配置**:阐述了配置文件的位置以及如何修改配置文件来调整服务器的...

    jboss7集群配置方案说明书

    本篇主要介绍两种集群配置方案:JBoss7+Apache集群以及Solr集群,以实现高效、稳定的服务。 首先,我们来看JBoss7+Apache集群的配置。在该模式下,JBoss7被设置为主从服务器结构,Apache则作为负载均衡器。主从...

    The JBoss 4 Application Server Guide

    - **目录结构**:描述了 JBoss 安装后的主要目录结构,帮助用户了解各部分的作用和位置。 - **默认服务器配置文件集**:提供了关于默认服务器配置文件的详细介绍,这对于调整服务器行为非常重要。 - **启动和停止 ...

    JBoss jBPM 实例说明

    ### JBoss jBPM 实例说明 #### 一、引言与背景介绍 JBoss jBPM 是一款开源的工作流和业务流程管理(Business Process Management, BPM)系统,旨在为开发者提供灵活且强大的流程管理解决方案。本文档将详细介绍 ...

    JBoss Portal安装及配置说明.doc

    - **JBossTools**:这是一个Eclipse插件集,提供了对JBoss应用服务器和Portal的集成支持,包括部署、调试和管理功能。 - **mysql-connector-java-5.1.7.tar.gz**:这是MySQL的JDBC驱动,用于连接JBoss Portal到...

    jboss drool5.1中文使用说明

    ### 一、介绍和普通用户指南 1. **欢迎** Drools 5.1.0 对用户友好,尤其适合那些希望在业务流程中嵌入规则处理的开发者。这个版本不仅提供了强大的规则引擎,还包含了丰富的工具集,如Guvnor(规则管理)、...

    jboss 4.2.3

    9. **模块化架构**:JBoss 4.2.3采用了模块化的结构,允许开发者只加载需要的组件,提高服务器性能并降低内存占用。 10. **社区支持**:虽然JBoss 4.2.3是一个较老的版本,但在发布时,它拥有庞大的社区支持,包括...

    JBoss MicroContainer分析及应用

    JBoss MC通过配置文件来描述服务的结构和行为,主要包括以下几个方面: ##### 3.1 Bean定义 Bean定义是指在配置文件中声明一个服务实体,包括它的类名、属性以及其他相关信息。 ##### 3.2 Constructor定义 ...

    JBoss 4.0

    - **主目录**:JBoss的主要目录结构包括多个子目录,如`bin`(二进制文件)、`conf`(配置文件)、`lib`(库文件)、`docs`(文档)等,每个目录都有其特定的功能和用途。 - **服务器配置**:配置文件位于`conf`目录...

    JBoss 4.0 Guide

    - **主目录**:讲解JBoss的主要目录结构,包括bin、lib、conf等目录的作用及其包含的重要文件。 - **服务器配置**:解释不同服务器配置文件的作用,如jboss-service.xml、jboss-deployment-structure.xml等。 - **...

    Jboss 下载地址

    2. **模块化架构**:JBoss采用了模块化的体系结构,这使得其易于扩展和维护。每个服务或功能作为一个独立的模块,可以单独加载或卸载,增强了灵活性。 3. **热部署**:JBoss支持热部署,即在不中断服务器运行的情况...

    jboss-5.1.0.GA 下载地址

    在“jbos-5.1.0.GA.zip.txt”这个文件中,可能包含的是JBoss AS 5.1.0.GA的详细安装指南、配置文件示例或使用说明等内容,这些文档将有助于理解和配置该应用服务器。下载并解压后,用户可以按照提供的文档步骤进行...

    JBoss_管理控制台指南中文版

    概述章节通常会介绍JBoss管理控制台的基本概念、功能和使用场景,帮助初学者快速了解管理控制台的作用和价值。这一章节可能包含管理控制台的主要特点、与JBoss服务器的集成方式、以及通过管理控制台可以实现的典型...

Global site tag (gtag.js) - Google Analytics