JBoss的配置

一、安装JDK

  java应用当然首先需要安装java运行环境(JRE),JRE提供了运行java的基本环境。安装jboss[1]需要jdk,jdk中包含jre.

  安装完JDK后,需要做如下配置:

  我的电脑->;属性->;高级->;环境变量,在系统变量 中点击新建下面二项:

  1. 名:JAVA_HOME,值:jdk的安装路径

  2. 名:CLASS_PATH,值:%JAVA_HOME%\lib

  在系统变量path中增加如下内容:;%JAVA_HOME%\bin;

  这些做完后,在命令窗口中运行java -version有输出便可

  二、安装Jboss

  Jboss是Java EE应用服务器(就像Apache是web服务器一样),专门用来运行Java EE程序的。

  安装jboss很简单,它不需要安装,直接解压到一个目录下即可

  三、安装AOP

  对于Jboss我们使用了一些其它组件:AOP,用它来做权限处理,(AOP是一个编程模型,用来对处理代码的方面,横切面),然后jboss自带有,但是自带的不能满足要求,所以需要单独安装和配置

  下载解压后,把基中的jboss-40-install/jboss-aop-jdk50.deployer下的所有的文件拷贝到jboss目录的jboss/server/default/deploy/jboss-aop-jdk50.deployer下,覆盖其中的所有文件

  打开jboss/server/default/deploy/jboss-aop-jdk50.deployer/META-INF/jboss-service.xml文件,把其中的< attribute name=”EnableLoadtimeWeaving”>false< /attribute>;上的false修改为true.

  打开jboss/bin/run.bat(如果是在linux则是jboss/bin/run. s h)文件,修改其中的JAVA_OPTS=”-Dprogram. name=$PROGNAME $JAVA_OPTS”为JAVA_OPTS=”-D program. na me=$PROGNAME -javaagent:pluggable-instrumentor.jar $JAVA_OPTS”.其中有颜色的部分是加上的。

  把aop解压目录下的lib/pluggable-instrumentor.jar文件拷贝到jboss/bin目录下

  AOP安装完成

  四、部署应用

  跟apache一样,jboss也有一个部署目录,那就是jboss/server目录,其中有三个目录:all,default,minimal,代表了jboss提供的三种部署方式,all表示jboss提供的服务全部打开,default表示默认的jboss服务,minimal表示只打开最基本的。这里面可以增加自己的部署,我们只使用default。

  进入default目录后,有以下几个目录:

  conf:一些配置文件

  data:保存的数据,比如有状态会话bean

  deploy:部署目录,所有的应用都部署在这里面,相当于apache的htdocs

  lib:部署的应用程序需要使用到的其它库(jar)

  log:jboss的日志

  tmp:部署应用是产生的临时文件

  work:工作目录,所部署的应用(一些jar压缩文件)会被解压在这里

  要部署我们的应用,还需要做以下几步:

  A。把jboss/docs/examples/jca/mysql-ds.xml拷贝到jboss/server/default/deploy目录下,并做如下修改:

  < connection-url>jdbc:mysql://你要连接的数据库的ip:3306/数据库名zeroDateTimeBehavior=convertToNull< /connection-url>

  < driver-class>com.mysql.jdbc.Driver< /driver-class>

  < user-name>;用户名< /user-name>

  < password>;密码< /password>

  B。下载jdbc驱动并把解压后的mysql-connector-java-5.XX-bin.jar拷贝到部署目录的lib中(server/default/lib)

  C。现在数据库连接就配置好了,接下来部署myro3,到svn上下载myro_server\build\jar\myro_server.jar,和myro_server\src\META-INF\jboss-aop.xml,myro_server\lib\jml-1.0b3-full.jar,myro_server\lib\ymsg_network_v0_64.jar,myro_server\lib\ymsg_support_v0_64.jar,都拷贝到server/default/deploy下面就可以了.

  到此jboss服务器和myro3应用就部署好了,现在只需要启动jboss,便可通过rcp客户端访问你的jboss

  打开命令提示窗口,到jboss的bin目录下面,运行:run -b 你的ip 启动jboss便可

  剩下的就是修改rcp客户端程序中myroConfig.properties把其中连接的jboss的ip修改为你的ip即可.

  对于gwt应用的部署,到时候要提供一个war文件,把它部署到server/default/deploy下面就行了,然后访问http://你的ip:8080/war文件名就可以访问gwt程序.。同时把myro_server/myroConfig.properties部署到jboss/bin中。以上,Jboss环境搭建步骤介绍完毕。

使用技巧

Jboss的目录结构

  1、bin:开始和停止JBoss的地方。

  其中有两个主要的批处理文件:run.bat和shutdown.bat。要启动JBoss只要执行run.bat文件即可;要停止JBoss必须执行带参数的shutdown.bat。

  一般运行命令:run -c 服务器名,例如:run -c all 或 run -c default 或自定义的服务器 run -c ejbtest。

  注意,shutdown.bat文件直接执行并不会自动停止JBoss,它必须要输入参数,参数意义如下:

  -h 显示帮助信息;

  -D 设置系统属性;

  -- 停止处理选项;

  -s 停止用JNDI URL指定的远程服务;

  -n 通过制定JMX名字来停止服务;

  -a 适配到指定的JNDI名称的远程服务;

  -u 指定用户名称;

  -p 指定用户密码;

  -S 停止服务器;

  -e 从虚拟机退出;

  -H 暂停(挂起)。

  一般,我们使用-S选项来停止服务器。即执行shutdown -S。

  2、docs:放置JBoss的例子、测试脚本和各种脚本配置文件的DTD。

  3、lib:放置JBoss所需要的部分jar包文件。

  4、client:放置EJB客户端运行时所需要的jar包。

  5、server:放置各启动类型的服务器端EJB配置所需要的文件等。

  6、backup

配置服务端口

  修改文件:%JBOSS_HOME%\server\default\deploy\jbossweb-tomcat41.sar\META-INF\jboss-service.xml

  在"8080"的配置后加入以下代码

  <!-- A HTTP/1.1 Connector on port 80 -->

  <Connector className="org.apache.coyote.tomcat4.CoyoteConnector"

  port="80" minProcessors="5" maxProcessors="100"

  enableLookups="true" acceptCount="10" debug="0"

  connectionTimeout="20000" useURIValidationHack="false"/>

  重新启动JBoss即可

启动过程

  设置环境变量 JBOSS_CLASSPATH (可以自己加上安全管理器和xml解析器)

  a) %JBOSS_CLASSPATH%;

  b) %JAVA_HOME%/lib/tools.jar;

  c) run.jar;

  d) ../lib/crimson.jar;

  设置启动参数JAXP(xml解析器和相应工厂)

  启动

  设置配置信息

  读取配置文件JBoss.properties,保存在系统属性中(System.properties)

  设置缺省属性jboss.home和java.security.auth.login.config

  创建MBeanServer.的实例:

  把配置文件和补丁文件所在的目录指定给特定的远程类加载器Mlet

  加载保存配置文件(mlet会自动在配置文件目录中查找)

  初始化并启动MBean

  配置服务ConfigurationService

  加载配置文件

  保存配置

  服务控制ServiceControl

  初始化服务程序(init方法)

  启动服务程序(start方法)

在JBOSS中发布文件

  1、制作JSP的war部署文件

  用"jar cvf hello.war index.jsp main.jsp"的方式生成把index.jsp和main.jsp文件加入到hello.war中。把生成的hello.war拷贝到jboss安装目录\server\default\deploy\下,部署成功。用"http://localhost:8080/hello/"或"http://localhost:8080/hello/index.jsp"这两个地址进行测试。

  2、制作Servlet的war部署文件

  A、用[ javac -classpath "%CLASSPATH%;%jboss_home%\server\default\lib\javax.servlet.jar" HelloWorld.java ]的形式编译HelloWorld.java(这是一个Servlet)得到HelloWorld.class

  B、写一个web.xml配置文件

  代码如下:

  <?xml version="1.0" encoding="UTF-8"?>

  <!DOCTYPE web-app

  PUBLIC "-//Sun Microsystems,Inc.//DTD Web Application 2.3//EN"

  "http://java.sun. com/dtd/web-app_2_3.dtd">

  <web-app>

  <servlet>

  <servlet-name>HelloWorld</servlet-name>

  <servlet-class>hello.HelloWorld</servlet-class>

  </servlet>

  <servlet-mapping>

  <servlet-name>HelloWorld</servlet-name>

  <url-pattern>/HelloWorld</url-pattern>

  </servlet-mapping>

  </web-app>

  每个标记(标签)必须小写,否则会出错。

  C、先在c:\servlet下建立一个web-inf目录,在目录中放入web.xml文件。

  D、在web-inf目录下建立一个classes目录,放入编译好的HelloWorld.class文件

  E、在c:\servlet下执行jar cvf hello.war *.*,很快就生成了一个名为hello.war的文件,接着把hello.war复制到jboss的安装目录\server\default\deploy\下完成部署。

  3、也可以不打包,把文件放在deploy下的同名文件夹下也可以。比如原来是制作成hello.war文件,可以建立一个名称为hello.war的文件夹,把要发布的文件拷贝到这个目录底下也可以发布成功。

补充

  1、JBoss的默认端口是8080

  2、对于NT和Win2000系统如果你要安装NT或Win2000服务的话,可以把JBoss加在系统服务中,避免你每次需要到JBoss目录下运行run.bat命令,只是当系统启动时,自动启动JBoss服务器。

 

=====================================================================================================

=============================================================

一 配置变量

首先,要安装JDK,配置JAVA_HOME环境变量

其次,将下载的JBoss解压,即完成安装。(解压目录最好不要有空格,否则运行容易出现异常)

然后,配置JBOSS_HOME环境变量,值为JBoss的解压路径

最后,可以运行%JBOSS_HOME%\bin\目录中的run.bat运行JBoss;地址栏输入http://localhost:8080/会进入JBoss的欢迎界面

二 目录结构说明

目录 描述
bin    包含启动和关闭JBoss等脚本文件。
docs  配置的样本文件(包括数据库配置等)。
docs/dtd   在JBoss中使用的各种XML文件的DTD文档。
lib    一些JAR,JBoss启动时加载,且被所有JBoss配置共享。
client客户端与JBoss通信所需的Java库(JARs)。
server各种JBoss配置。每个配置必须放在不同的子目录。子目录名字表示配置名字。JBoss包含3个默认的配置:minimial,default,all。在安装时可以进行选择。
server/default/confJBoss的配置文件。
server/default/dataJBoss的数据库文件。比如,嵌入的数据库或者JBossMQ。
server/default/deploy   JBoss的热部署目录。放到这里的任何文件或目录会被JBoss自动部署。包括EJB,WAR,EAR甚至服务。
server/default/lib一些JAR,JBoss在启动特定配置时加载它们。
server/default/logJBoss的日志文件。
server/default/tmpJBoss的临时文件。

三 JBoss的配置

1   web服务端口号的修改

这点在前文中有所提及,即修改JBoss安装目录"server"default"deploy"jboss-web.deployer下的server.xml文件,内容如下:

 
 
  1. < Connector port="8080" address="${jboss.bind.address}" maxThreads="250"
  2. maxHttpHeaderSize="8192" emptySessionPath="true" protocol="HTTP/1.1"
  3. enableLookups="false" redirectPort="8443" acceptCount="100"
  4. connectionTimeout="20000" disableUploadTimeout="true" />

将上面的8080端口修改为你想要的端口即可。重新启动JBoss后访问:http://localhost/:新设置的端口,可看到JBoss的欢迎界面。

2   JBoss的安全设置

 

JBoss安装成功后,一般可以通过http://localhost:port来访问.Jmx Console和Jboss Web Console 里面可以修改和删除应用的参数,如果不加强安全设置,将会带来严重安全后果。
默认登录jmx-console的账号信息是:admin/admin,因此我们应该修改这个账号信息。

 

(1)jmx-console登陆的用户名和密码设置

在%JBOSS_HOME%/server/default/deploy/jmx-console.war/WEB-INF/jboss-web.xml文件中
将注释文档去掉修改为:

 
 
  1. < jboss-web>
  2. < security-domain>java:/jaas/jmx-console< /security-domain>
  3. < /jboss-web>

在同目录下web.xml,查找< security-constraint/>节点,修改为:

 
 
  1. < security-constraint>
  2. < web-resource-collection>
  3. < web-resource-name>HtmlAdaptor< /web-resource-name>
  4. < description>An example security config that only allows user with the role
  5. JBossAdmin to access the HTML JMX console web application
  6. < /description>
  7. < url-pattern>/*< /url-pattern>
  8. < http-method>GET< /http-method>
  9. < http-method>POST< /http-method>
  10. < /web-resource-collection>
  11. < auth-constraint>
  12. < role-name>JBossAdmin< /role-name>
  13. < /auth-constraint>
  14. < /security-constraint>

在jmx-console安全域和运行角色JBossAdmin都是在login-config.xml中配置,在%JBOSS_HOME%/server/default/conf下找到它,查找application-policy name = "jmx-console",修改为

 
 
  1. < application-policy name = "jmx-console">
  2. < authentication>
  3. < login-module code="org.jboss.security.auth.spi.UsersRolesLoginModule"
  4. flag = "required">
  5. < module-option name="usersProperties">props/jmx-console-users.properties
  6. < /module-option>
  7. < module-option name="rolesProperties">props/jmx-console-roles.properties
  8. < /module-option>
  9. < /login-module>
  10. < /authentication>
  11. < /application-policy>

在此处可以看出,登录的角色、用户等的信息分别在props目录下的jmx-console-roles.properties和jmx-console-users.properties文件中设置,分别打开这两个文件。

其中jmx-console-users.properties文件的内容如下:

# A sample users.properties file for use with the UsersRolesLoginModule
admin=admin

该文件定义的格式为:用户名=密码,在该文件中,默认定义了一个用户名为admin,密码也为admin的用户,读者可将其改成所需的用户名和密码。

jmx-console-roles.properties的内容如下:

# A sample roles.properties file for use with the UsersRolesLoginModule
admin=JBossAdmin, HttpInvoker

该文件定义的格式为:用户名=角色,多个角色以“,”隔开,该文件默认为admin用户定义了JBossAdmin和HttpInvoker这两个角色。

配置完成后读者可以通过访问: http://localhost:8088/jmx-console/ ,输入jmx-console-roles.properties文件中定义的用户名和密码,访问jmx-console的页面。

(2)web-console登陆的用户名和密码设置

找到%JBOSS_HOME%/server/default/deploy/management/console-mgr.sar/web-console.war/WEB-INF下的jboss-web.xml文件,去掉< security-domain>java:/jaas/web-console< /security-domain>的注释。

在同目录下的web.xml文件中去掉< security-constraint>部分的注释。

在%JBOSS_HOME%/server/default/conf下的login-config.xml文件中查找application-policy name = "web-console"

在文件中可以看到,设置登录web-console的用户名和角色等信息分别在login-config.xml文件所在目录下的web-console-users.properties和web-console- roles.properties文件中,但因为该目录下无这两个文件,我们在JBoss安装目录"server"default"conf"props目录下建立这两个文件,文件内容可参考在“jmx-console登录的用户名和密码设置”中的两个相应的配置文件的内容。

web-console-users.properties文件的内容如下:

# A sample users.properties file for use with the UsersRolesLoginModule
admin=admin

web-console-roles.properties文件的内容如下:

admin=JBossAdmin,HttpInvoker

因为此时这两个文件不与login-config.xml同目录,所以login-config.xml文件需进行少许修改

 
 
  1. < module-option name="usersProperties">props/web-console-users.properties
  2. < /module-option>
  3. < module-option name="rolesProperties">props/web-console-roles.properties
  4. < /module-option>

JBoss的配置这样就完成了。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值