jobss目录结构
一. JBoss的目录结构
bin:包含各种脚本文件以及相关文件,比如run.bat和shutdown.bat批处理文件。
client:存储配置信息和可能被Java客户端应用程序或外部Web容器用到的jar文件。
docs:保存在JBoss中引用到的XML文件和DTD文件(这里也提供了在JBoss中如何写配置文件的例子)。该目录下有针对不同的数据库(如MySql、Oracle、SQL Server、Postgres等)配置数据源的JCA配置文件。
lib:一些 JAR,JBoss 启动时加载,且被所有 JBoss 配置共享。(不要把你的库放在这里)
server: 这里的每一个子目录对应着一个服务器配置。该配置由运行脚本文件时的参数"-c <配置名称>"来确定。在server目录下有三个配置例子,即all、default和minimal,每一个配置安装的服务都不一样。 其中default下是缺省配置。
minimal:仅加载启动JBoss所需的最少服务,如日志服务、JNDI和URL部署扫描器(发现新的部署),不包含Web容器、EJB和JMS。
all:启动所有的服务,包括RMI/IIOP、集群服务和Web服务部署器(默认配置不会被加载)。
启动JBoss时,如果run.bat不带任何参数,则使用的配置是server/default目录下的配置。如果要以其它目录下的配置启动JBoss,可以使用如下参数:
run -c all
上述命令将以all目录下的配置信息启动JBoss。也可以在server目录下新建目录,按自己的需要写配置文件。
下面以default目录为例,介绍服务器配置的目录结构。
conf:该目录下有指定核心服务的jboss-service.xml文件,也可以放其它服务配置的文件。
data:该目录是JBoss内置的数据库Hypersonic存储数据的地方,也是JBossMQ(the JBoss implementation of JMS)存储相关信息的地方。
deploy: 这是部署J2EE应用程序(jar、war和ear文件)的位置,只需将相应文件拷贝到该目录下即可。该目录也用来热部署服务和JCA资源适配器。已经有 一些服务部署到这个目录了,如jmx-console,你启动JBoss后即可访问。JBoss会周期性的扫描deploy目录,当有任何组件改 变,JBoss会重新部署该程序。
lib:存放服务器配置所需的jar文件,比如,你可以将JDBC驱动程序放在该目录下。
log:存放日志信息。JBoss使用Jakarta log4j包存储日志,在程序中你也可以直接使用该信息。
tmp:存储在部署过程中解压时产生的临时文件。
work:Tomcat编译JSP文件时的工作目录。
目录data、log、tmp和work在JBoss安装后并不存在,当JBoss运行时自动建立。
另外,连接数据库所用到的JDBC驱动程序要拷贝到JBoss_HOME /server /default /lib 目录下。
二. JBoss中的部署
JBoss中的部署过程非常的简单、直接并且支持热部署。在每一个配置中,JBoss不断的扫描一个特殊的目录的变化:$JBOSS_HOME/server/config-name/deploy。
你可以把下列文件拷贝到此目录下:
* 任何jar库(其中的类将被自动添加到JBoss的classpath中)
* EJB JAR
* WAR (Web Appliction aRrchive) 注意默认情况下context为war名称.
* EAR (Enterprise Application aRchive)
* 包含JBoss MBean定义的XML文件
* 一个包含EJB JAR、WAR或者EAR的解压缩内容,并以.jar、.war或者.ear结尾的目录
三. 日志设置
若需要修改JBoss默认的log4j设置,可修改JBoss安装目录"server\default\conf下的jboss-log4j.xml文件,在该文件中可以看到,log4j的日志输出在JBoss安装目录server\default\log下的server.log文件中。
四. JBoss 启动后只能从本机访问,不能从远程访问的解决办法
用netstat –na 查看,发现绑定到127.0.0.1上:
tcp 0 0 127.0.0.1:8080
server\default\deploy\jbossweb.sar\server.xml中的:
<Connector protocol="HTTP/1.1" port="8080" address="${jboss.bind.address}" connectionTimeout="20000" redirectPort="8443" />
将${jboss.bind.address}修改为0.0.0.0即可
五:Jobss实现jsp/java的热部署
找到server\default\deploy\jboss-web.deployer\conf的文件,修改配置如下: