目录结构:
bin:含有启动、停止以及其他系统相关脚本。在前面,本书已经讨论过启动JBoss应用服务器的run脚本。
client:存储供Java客户应用或者外部Web容器使用的配置文件和JAR文件。用户可以使用所需要的具体存档,或者仅仅使用jbossall-client.jar。
docs:含有JBoss引用的XML DTD文件(当然,还包括JBoss具体配置文件)。同时,还存在JCA(Java Connetor Architecture,Java连接器架构)实例配置文件,供设置不同数据库的数据源使用(比如MySQL、Oracle、Postgres)。
lib:包含运行JBoss微内核所需的JAR文件。请注意,不要往该目录添加用户自身的任何JAR文件。
server:包含的各个子目录都是不同的服务器配置。通过往run脚本后添加-c <config name>参数便能够指定不同的配置。接下来,来看看default服务器配置。
从根本上考虑,JBoss架构是由JMX MBean服务器、微内核、一套可插入式组件服务以及MBean构成的。这种架构使得,集成不同的配置变得更加简单,并且能够很灵活地满足用户的各自需求。用户不再需要一次性运行重量级的应用服务器。同时,用户可以删除不再需要使用的组件(这将从很大程度上减少服务器的启动时间),并且通过开发自己的MBean还能够集成其他服务到JBoss中。当然,如果是运行标准J2EE应用,则不用理会这些自定义工作。用户所需要的一切服务,JBoss发布版都包括了。
server目录下存在3个服务器实例配置:all、default以及minimal,它们各自提供了不同的服务集合。很显然,如果启动JBoss服务器时没有指定其他配置,则将使用default配置。
minimal:这是启动JBoss服务器所要求的最低配置。minimal配置将启动日志服务、JNDI服务器以及URL部署扫描器,以找到新的部署应用。对于那些不需要使用任何其他J2EE技术,而只是使用自定义服务的场合而言,则这种JMX/JBoss配置最适合。它仅仅是服务器,而不包含Web容器、不提供EJB和JMS支持。
default:默认配置,它含有大部分J2EE应用所需的标准服务。但是,它不含有JAXR服务、IIOP服务、或者其他任何群集服务。
all:提供了所有可用的服务。它包含RMI/IIOP和群集服务,default配置中没有提供群集服务。
用户也可以添加自身的服务器配置。最佳做法是,拷贝最接近用户需求的现有配置,然后修改其具体内容。比如,如果用户不需要使用消息服务,则只需要拷贝default目录,并重新命名为myconfig,然后删除jms子目录。最后,启动myconfig配置。
run -c myconfig
default服务器配置目录的具体内容:
conf:含有指定JBoss核心服务的jboss-service.xml文件。同时,还包括核心服务的其他配置文件。
data:Hypersonic数据库实例将数据存储在此处。JBossMQ(JMS的JBoss实现)也使用它存储消息。
deploy:用户将应用代码(JAR\WAR\EAR文件)部署在此处。同时,deploy目录也用于热部署服务(即,那些能够从运行服务器动态添加或删除的服务)和部署JCA资源适配器。因此,用户能够在deploy目录看到大量的配置文件。尤其是,用户能够看到JMX控制台应用(未打包的WAR文件),本书前面讨论过。JBoss服务器将定期扫描该目录,从而查找是否有组件更新或修改,从而自动完成组件的重新部署。本书后续章节将详细阐述部署细节。
lib:服务器配置所需的JAR文件。用户可以添加自身的库文件,比如JDBC驱动,等等。
log:日志信息将存储到该目录。JBoss使用Jakarta Log4j包作为其日志功能。同时,用户可以在应用中直接使用Log4j日志记录功能。
tmp:供部署器临时存储未打包应用使用,也可以作为其他用途。
work:供Tomcat编译JSP使用。
其中,data、log、tmp、work目录是JBoss创建的。如果用户没有启动过JBoss服务器,则这些目录不会被创建。
.
2.2.1 核心服务
当JBoss服务器启动时,首先会启动conf/jboss-service.xml文件指定的核心服务。
虽然通过conf/jboss-service.xml文件能够添加其他MBean服务,但是更好的办法是,将单独的配置文件放置在deploy目录中,因为这将使得用户的服务具有热部署能力。
2.2.2 日志服务
Log4j是JBoss使用的日志功能包。通过conf/log4j.xml文件能够控制JBoss的日志功能。
2.2.3 安全性服务
安全性域信息存储在login-config.xml文件中,其包含了许多安全性域定义。各个安全性域指定了许多JAAS登陆模块,供安全性域认证使用。当用户需要在应用中使用安全性时,需要在JBoss特定部署描述符jboss.xml或jboss-web.xml中指定待使用的安全性域名。
2.2.4 其他服务
deploy目录放置的服务不是核心服务,但具有热部署能力。用户可以通过XML描述符文件(*-service.xml)或JBoss服务存档(SAR)文件给出服务。SAR同时含有XML描述符和服务所要求的其他资源(比如,类、JAR库文件以及其他存档),而且SAR是以单个存档文件给出的。
posted on 2005-08-19 17:47
Dave 阅读(899)
评论(2) 编辑 收藏