Jboss6.1的用途,配置,使用详解
一..简介:
JBoss是全世界开发者共同努力的成果,一个基于J2EE的开放源代码的应用服务器因为JBoss代码遵循LGPL许可,你可以在任何商业应用中免费使用它,而不用支付费用
(注意:JBoss不支持servlet/JSP的WEB容器)
二..jboss的下载:( http://jbossas.jboss.org/downloads.html )版本自选
三..JBoss具有如下优点:
1 JBoss是免费的,开放源代码J2EE的实现,通过LGPL许可证进行发布
2 JBoss需要的内存和硬盘空间比较小
3 安装非常简单先解压缩JBoss打包文件再配置一些环境变量就可以了
4 JBoss能够"热部署",部署BEAN只是简单拷贝BEAN的JAR文件到部署路径下就可以了如果没有加载就加载它;如果已经加载了就自动更新
5 JBoss与Web服务器在同一个Java虚拟机中运行,Servlet调用EJB不经过网络,从而大大提高运行效率,提升安全性能
6 用户可以直接实施J2EE-EAR,而不是以前分别实施EJB-JAR和Web-WAR,非常方便
7Jboss支持集群
四..配置jboss的环境变量,首先需要指定JDK的JAVA_HOME。(是JDK而不是JRE)。配置JBOSS_HOME的安装目录。运行Jboss安装目录”bin/run.bat”如dos窗口没异常,配置成功。
.设置默认项目
第一步:在需要设置的项目中的web-inf下面添加文件jboss-web.xml
主要内容如下:
<jboss-web>
<context-root>/</context-root>
<virtual-host></virtual-host>
</jboss-web>
第二步:将server\default\deploy\下的ROOT.war 改为小写的root.war
第三步:启动或重启JBOSS
五..修改Jboss的端口: (如我们平常使用Tomcat或oracle的端口会与此发生冲突)
%JBOSS_HOME%/server/default/deploy/jbossweb.sar/server.xml编译修改如下:搜素HTTP/1.1改为:
<Connector protocol="HTTP/1.1"port="8787" address="0.0.0.0"
redirectPort="8787" URIEncoding="UTF-8"/>
Port为端口号 address为局域网或者本机访问
六.配置数据源:
JBoss中使用xml文件来配置数据源,找到%JBOSS_HOME%/docs/examples/jca文件。里面有各种数据库的配置实例。本次配置Oracle找到oracle-ds.xml文件。修改driver-class和user-name,password等信息。
把修改好的oracle-ds.xml文件copy到%JBOSS_HOME%/server/default/deploy目录下
数据库驱动Copy到%JBOSS_HOME%/server/default/lib目录下.重启配置成功。
七.安全性的用户配置
JMX安全配置:
①找到%JBOSS_HOME%/common/deploy/jmx-console.war/WEB-INF/jboss-web.xml
根据说明。去掉需要登录信息的注释
②找到%JBOSS_HOME%/common/deploy/jmx-console.war/WEB-INF/web.xml
取消如***释:(开其验证登录)
<security-constraint>
<web-resource-collection>
<web-resource-name>HtmlAdaptor</web-resource-name>
<description>An example security configthat only allows users with the
role JBossAdmin to access the HTML JMXconsole web application
</description>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>JBossAdmin</role-name>
</auth-constraint>
</security-constraint>
③配置用户的登陆信息
找到%JBOSS_HOME%/server/default/conf/login-config.xml如下代码:
<application-policyname="jmx-console">
<authentication>
<login-modulecode="org.jboss.security.auth.spi.UsersRolesLoginModule"
flag="required">
<module-optionname="usersProperties">props/jmx-console-users.properties</module-option>
<module-optionname="rolesProperties">props/jmx-console-roles.properties</module-option>
</login-module>
</authentication>
</application-policy>
用户名密码配置在props/jmx-console-users.properties中
角色配置在props/jmx-console-roles.properties中
④打开2个文件自行修改账号信息和角色信息
Web-console的安全配置:
①打开%JBOSS-Home%/common/deploy/jbossws-console.war/WEB-INF/jboss-web.xml根据说明,去掉注释
<jboss-web>
<!– A security domain that restrictsaccess –>
<security-domain>java:/jaas/JBossWS</security-domain>
<context-root>jbossws</context-root>
</jboss-web>
②打开%JBOSS-Home%/common/deploy/jbossws-console.war/WEB-INF/web.xml
根据说明,去掉注释
A security constraint that restricts access
<security-constraint>
<web-resource-collection>
<web-resource-name>ContextServlet</web-resource-name>
<description>An example securityconfig that only allows users with the
role 'friend' to access the JBossWS consoleweb application
</description>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>friend</role-name>
</auth-constraint>
</security-constraint>
③配置用户的登陆信息
JBossWS的安全域和运行角色friend都是在 %JBOSS_HOME%/server/default/conf/login-config.xml中配置的
<application-policy>
<authentication>
<login-modulecode=”org.jboss.security.auth.spi.UsersRolesLoginModule”
flag=”required”>
<module-optionname=”usersProperties”>props/jbossws-users.properties</module-option>
<module-optionname=”rolesProperties”>props/jbossws-roles.properties</module-option>
<module-optionname=”unauthenticatedIdentity”>anonymous</module-option>
</login-module>
</authentication>
</application-policy>
④修改密码和角色
打开%JBOSS_HOME%/server/default/conf/props/jbossws-user.properties自行修改密码
打开%JBOSS_HOME%/server/default/conf/props/jbossws-roles.properties自行修改密码
注意:JBoss中也已经包含了JSP服务器功能,而且它监听的端口也是8080,所以Tomcat和JBoss是不能同时在一台电脑启动的。默认情况下JBoss只监听localhost的请求,如果要让局域网的电脑访问
命令行运行run.bat –b 0.0.0.0