• [ZT] Jboss基础入门配置


    一、设置控制台登录窗口

    <br>安装好jboss并启动jboss后,在浏览器窗口的地址栏里键入                                                                                                                                                                                        http://localhost:8080/jmx-console就可以浏览jboss的部署管理的一些信息,默认情况下不键入任何用户名和密码就可以进入此页面,          方便是方便,但真正使用起来还是有点安全隐患,因为不管任何人只要知道server的ip    都可以进去访问。下面我们针对此问题对jboss进行配置,使得访问jmx-console也必须    要知道用户名和密码才可进去访问.
    步骤:
    1. 进入jmx-console.war,通常此目录在{jboss_home}\server\default\deploy目录下。
    2. 编辑该目录下的WEB-INF\web.xml,把<security-constraint>部分注释去掉
    3. 编辑该目录下的WEB-INF\classes的roles.properties和users.properties;其中
           1) users.properties文件里定义用户名和密码,格式为username=password。当然,可以依                                                                  照此格式添加多个用户。
    2) roles.propertie文件里定义用户名和角色,格式为username=role。这里的role必须和web.xml文件里的<role-name>相对应。
    4. 编辑WEB-INF\jboss-web.xml文件,打开<security-domain>部分注释;这里<security-domain>内容对应的security-domain对应{jboss_home}\server\default\conf\login-config.xml这个jaas配置文件里的某个application-policy。
    如:
    <security-domain>java:/jaas/jmx-console</security-domain>
    在login-config.xml里对应有:
    <application-policy name = "jmx-console">
                 <authentication>
                       <login-module code="org.jboss.security.auth.spi.UsersRolesLoginModule"
                               flag = "required" />
                 </authentication>
    </application-policy>
    5.Ok!一切大功告成!重启jboss,就会出现你想要的输入username和password的 窗口

    二、启动与关闭JBOSS应用服务器:
    1. 启动JBOSS应用服务器:
    l 双击桌面快捷方式。
    l 打开命令行窗口,进入 %JBOSS_HOME%\bin,键入 run ,回车。
    2.关闭JBOSS应用服务器:
    l 直接关闭JBOSS应用服务器;
    l 另外打开一个命令行窗口,进入%JBOSS_HOME%\bin,键入shutdown ?username=用户名    -password=密码,回车。

    三、修改JBOSS应用服务器连接的数据库和端口:
    1.在jboss?jboss-3.x---server---default---deploy下,mssql-service.xml文件中:
    <config-property name=“ConnectionURL” type=“java.lang.String”>
    jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Northwind
    </config-property>
    <config-property name=“UserName” type=“java.lang.String”>sa</config-property>
    <config-property name=“Password” type=“java.lang.String”>1</config-property>

    其中:
    ①jdbc:microsoft:sqlserver://localhost:1433: SQL2000端口是1433,如果数据库和WEB服务器分装于不同的机器,那么localhost要改成数据库服务器的ip地址;
    ②DatabaseName=Northwind: 数据库是Northwind,可以修改成另一个数据库;
    ③<config-property name=“UserName” ype=“java.lang.String”>sa</config-property>
       使用数据库的用户名sa
    ④<config-propertyname=“Password”type=“java.lang.String”>1</config-property>
       与用户名sa对应的密码:1

    注:当我们的数据库、用户名或密码修改后,可在mssql-service.xml修改相应的项即可。

    2. 使用JBOSS中间件时,默认的访问端口是8080.如何修改?
    打开JBOSS目录-->jboss-3.0.8-->server-->default-->deploy-->jbossweb.sar-->meta-inf下的jboss-service.xml文件,搜索8080,将8080改为新的端口号,保存文件,重启应用服务器即可.访问时使用新的端口号.
    <Call name="addListener">
                     <Arg>
                       <New class="org.mortbay.http.SocketListener">
                           <Set name="Port"><SystemProperty name="jetty.port" fault="8000"/></Set>
                           <Set name="MinThreads">10</Set>
                           <Set name="MaxThreads">100</Set>
                           <Set name="MaxIdleTimeMs">30000</Set>
                           <Set name="LowResourcePersistTimeMs">5000</Set>
                       </New>
                     </Arg>
                 </Call>

    四、其它设置
    1.WAR文件的部署
    JBoss支持热部署,也就是war文件部署到服务器上后不需要重新启动JBoss(Tomcat不支这种特性)。war文件的部署很简单,直接将war文件拷贝到JBoss\server\default\deploy目录下即可。
    2.JBoss的目录结构
           bin:改目录包含各种脚本文件以及相关文件,前面已经用过run.bat和shutdown.bat两个批处理文件。
           client:存储配置信息和可能被Java客户端应用程序或外部Web容器用到的jar文件。
           docs:保存在JBoss中引用到的XML文件和DTD文件(这里也提供了在JBoss中如何写配置文件的例子)。该目录下有针对不通的数据库(如MySql、Oracle、SQL Server、Postgres等)配置数据源的JCA配置文件。
             lib:这里存储运行JBoss微内核所需的jar文件。该目录下不要存储任何你自己的jar文件。
             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目录下。
    3. 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文档,我们可知道,实际上配置一个Server仅仅只需要将Default目录下所有文件拷到一个新目录下并重命名就可以了,同时修改相应的一些文件中的参数就可以了。做如下约定:
    1、    重新指定一个run.bat快捷方式 runJwfm.bat
    复制一份<JBOSS_HOME>/BIN目录下的run.bat,并修改
    "%JAVA%" %JAVA_OPTS% -classpath "%JBOSS_CLASSPATH%" org.jboss.Main %*为
    "%JAVA%" %JAVA_OPTS% -classpath "%JBOSS_CLASSPATH%" org.jboss.Main ?c jwfm %*
    2、修改相应参数文件
         <JBoss_Home>/Server/jwfm/conf 目录下文件jboss-service.xml修改动态部署时间:
    <attribute name="ScanPeriod">5000</attribute> 将5000调整到800,特稳定后调回5000


    JBoss 的一些配置(端口,虚拟目录,虚拟主机,中文问题,数据库连接)
    1、访问端口配置
    编辑%jboss-4.0.2%\server\default\deploy\jbossweb-tomcat55.sar\server.xml
    将8080改为你希望访问的端口(8888)
        <!-- A HTTP/1.1 Connector on port 8080 -->
          <Connector port="8888" address="${jboss.bind.address}"
             maxThreads="250" strategy="ms" maxHttpHeaderSize="8192"
             emptySessionPath="true"
             enableLookups="false" redirectPort="8443" acceptCount="100"
             connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8"/>

    2、虚拟目录配置:
    编辑%jboss-4.0.2%\server\default\deploy\jbossweb-tomcat55.sar\server.xml
    在</Host>之前增加:
    <Context path="/test" docBase="F:\\test" debug="1" reloadable="true" override="true" crossContext="true"/>
    其中path 为虚拟目录名,docBase为硬盘路径(可为绝对路径)reloadable为类变更时是否重新加载

    3、解决附件汉字问题:
    a.编辑
    %jboss-4.0.2%\server\default\deploy\jbossweb-tomcat55.sar\server.xml
    在Connector 属性最后增加:URIEncoding="UTF-8"
    <!-- A HTTP/1.1 Connector on port 8080 -->
    <Connector port="8888" address="$"
         maxThreads="250" strategy="ms" maxHttpHeaderSize="8192"
         emptySessionPath="true"
         enableLookups="false" redirectPort="8443" acceptCount="100"
         connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8"/>
    b.页面处理
    将生成的附件名称进行编码转换:
    <%
    String n2="Redhat9中文官方文档.rar";
    n2=java.net.URLEncoder.encode(n2,"UTF-8");
    %>
    <a href="Redhat9">http://192.168.1.112:8080/zlsf/<%=n2%>">Redhat9中文官方文档</a>

    4、解决汉字问题。
    在:项目/WEB-INFweb.xml中增加:
    <filter>
    <filter-name>Set Character Encoding</filter-name>
    <filter-class>filters.SetCharacterEncodingFilter</filter-class>
    <init-param>
    <param-name>encoding</param-name>
    <param-value>GBK</param-value>
    </init-param>
    </filter>
    <filter-mapping>
    <filter-name>Set Character Encoding</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>
    其中
    <param-value>GBK</param-value> 这里要设置GBK,而不是UTF8。为了解决标单提交后的中文问题。
    filters.SetCharacterEncodingFilter 类文件在TOMCAT lib 目录下filters.jar文件中。
    你只需要把filters.jar放入你应用目录下的LIB中即可。

    5、虚拟主机配置
    a.编辑
    %jboss-4.0.2%\server\default\deploy\jbossweb-tomcat55.sar\server.xml
    在 </Engine>之前添加:
    <Host name="www.ytiic.com">
    <Alias>www2.ytiic.com</Alias>--〉别名,通过这个名字可以访问www.ytiic.com下的应用。
    <Alias>ytiic.com</Alias>--〉同上
    <!-- Default context parameters -->
    <DefaultContext cookies="true" crossContext="true" override="true"/>
    </Host>
    b.在这个目录下:%jboss-4.0.2%\server\default\deploy
    创建一个目录:test.war(你的虚拟目录加.war)之后在其下创建WEB-INF目录
    在WEB-INF下创建:jboss-web.xml 文件,内容如下:
    <jboss-web>
    <context-root>/</context-root>
    <virtual-host>www.ytiic.com</virtual-host>
    </jboss-web>
    虚拟主机配置完成!
    当jboss启动后,会自动对应2个配置文件中的虚拟主机名。

    6、数据库配置:
    去这个 %jboss-4.0.2%\docs\examples\jca 目录找一个你想用的数据库文件:
    拷贝到%jboss-4.0.2%\server\default\deploy 下,打开编辑。
    在%jboss-4.0.2%\server\default\deploy目录下自己建了一个文件:
    test这个名字自己定义,后面需要保留。
    test-ds.xml
    内容如下:
    < xml version="1.0" encoding="UTF-8" >
    <!-- ===================================================================== -->
    <!--                                                                       -->
    <!-- JBoss Server Configuration                                           -->
    <!--                                                                       -->
    <!-- ===================================================================== -->
    <!-- $Id: mssql-ds.xml,v 1.3 2004/09/15 14:37:40 loubyansky Exp $ -->
    <!-- ======================================================================-->
    <!-- New ConnectionManager setup for Microsoft SQL Server 2000 driver     -->
    <!-- You may download the latest Microsoft JDBC driver from *Microsoft*    -->
    <!-- http://msdn.microsoft.com/downloads/default.asp url=/downloads/sample.asp url=/MSDN-
    FILES/027/001/779/msdncompositedoc.xml&frame=true -->
    <!-- ===================================================================== -->
    <datasources>
    <local-tx-datasource>
        <jndi-name>test</jndi-name>
        <connection-url>jdbc:mysql://192.168.1.1/test</connection-url>
        <driver-class>org.gjt.mm.mysql.Driver</driver-class>
        <user-name>root</user-name>
        <password>password</password>
            <!-- sql to call when connection is created
            <new-connection-sql>some arbitrary sql</new-connection-sql>
            -->
          <!-- The minimum connections in a pool/sub-pool. Pools are lazily constructed on first use -->
          <min-pool-size>5</min-pool-size>
          <!-- The maximum connections in a pool/sub-pool -->
          <max-pool-size>20</max-pool-size>
            <!-- sql to call on an existing pooled connection when it is obtained from pool
            <check-valid-connection-sql>some arbitrary sql</check-valid-connection-sql>
            -->
          <!-- The time before an unused connection is destroyed -->
          <!-- NOTE: This is the check period. It will be destroyed somewhere between 1x and 2x this timeout after last use-->
          <!-- TEMPORARY FIX! - Disable idle connection removal, HSQLDB has a problem with not reaping threads on closed connections -->
          <idle-timeout-minutes>1</idle-timeout-minutes>
          <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional) -->
          <metadata>
             <type-mapping>mysql</type-mapping>
          </metadata>
    </local-tx-datasource>
    </datasources>

    数据库配置完成。
    连接数据源名为:java:/test

    =================================
    所有配置完成!!

    注意问题:
    (1)、你的应用下的LIB库不要和%jboss-4.0.2%\server\default\lib 下的类库相冲突。
    (2)、数据库配置参考:%jboss-4.0.2%\docs\examples\jca 下的文件

    7、禁止文件目录列表
    编辑%jboss-4.0.2%\server\default\deploy\jbossweb-tomcat55.sar\conf\web.xml
    把listing设置为false

        <servlet>
            <servlet-name>default</servlet-name>
            <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
            <init-param>
                <param-name>debug</param-name>
                <param-value>0</param-value>
            </init-param>
            <init-param>
                <param-name>listings</param-name>
                <param-value>true</param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
        </servlet>

    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/boboo_2000_0/archive/2008/11/05/3224722.aspx

    1、访问端口配置
    编辑F:\JBoss\server\default\deploy\jboss-web.deployer\server.xml

    将8080改为你希望访问的端口(8888)

    <Connector port="8080" address="${jboss.bind.address}"   

             maxThreads="250" maxHttpHeaderSize="8192"

             emptySessionPath="true" protocol="HTTP/1.1"

             enableLookups="false" redirectPort="8443" acceptCount="100"

             connectionTimeout="20000" disableUploadTimeout="true" />

    2、解决附件汉字问题:

    编辑F:\JBoss\server\default\deploy\jboss-web.deployer\server.xml

    在Connector 属性最后增加:URIEncoding="UTF-8"

    <Connector port="8080" address="${jboss.bind.address}"   

             maxThreads="250" maxHttpHeaderSize="8192"

             emptySessionPath="true" protocol="HTTP/1.1"

             enableLookups="false" redirectPort="8443" acceptCount="100"

             connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8" />

    页面处理:将生成的附件名称进行编码转换

    <%

    String n2="Redhat9中文官方文档.rar";

    n2=java.net.URLEncoder.encode(n2,"UTF-8");

    %>

    <a href="Redhat9">http://192.168.1.112:8080/zlsf/<%=n2%>">Redhat9中文官方文档</a>

    3.禁止/打开文件目录列表

    编辑F:\JBoss\server\default\deploy\jboss-web.deployer\conf\web.xml

    禁止把listing设置为false,否则true

        <servlet>

            <servlet-name>default</servlet-name>

            <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>

            <init-param>

                <param-name>debug</param-name>

                <param-value>0</param-value>

            </init-param>

            <init-param>

                <param-name>listings</param-name>

                <param-value>false</param-value>

            </init-param>

            <load-on-startup>1</load-on-startup>

    </servlet>

    4、默认打开页配置:

    编辑F:\JBoss\server\default\deploy\jboss-web.deployer\conf\web.xml

        <welcome-file-list>

            <welcome-file>index.html</welcome-file>

            <welcome-file>index.htm</welcome-file>

            <welcome-file>index.jsp</welcome-file>

        </welcome-file-list>

    5、防止LOG文件无限制的扩大

    F:\JBoss\server\default\conf目录下打开jboss-log4j.xml文件在下语句块下

       <appender name="FILE" class="org.jboss.logging.appender.DailyRollingFileAppender">

          <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>

          <param name="File" value="${jboss.server.log.dir}/server.log"/>

          <param name="Append" value="false"/>

    增加以下语句

    <param name="MaxFileSize" value="10240KB"/>

    <param name="MaxBackupIndex" value="1"/>

    其中文件的最大值和备份的数量可以根据实际情况而改变

    6、虚拟目录配置:

    编辑F:\JBoss\server\default\deploy\jboss-web.deployer\server.xml

    在 </Host>之前增加:
    <Context path="/test" docBase="F:\\test" debug="1" reloadable="true" override="true" crossContext="true"/>

    其中path 为虚拟目录名,docBase为硬盘路径(可为绝对路径)reloadable为类变更时是否重新加载。

    7、运行run.bat来启动JBoss  关闭JBoss:关闭JBoss的DOS窗口或按"CTRL + C"

    原文出处:http://hi.baidu.com/fengqiao678/blog/item/e525eef0ee9fc3c67831aa7e.html

    Desire has no rest.
  • 相关阅读:
    HttpServletResponse
    非易失性FRAM中的预充电操作
    Everspin MRAM优化系统能耗
    工业和消费者HMI系统中的扩展内存
    STT结构涡轮增压MRAM
    将FRAM存储器芯片集成到汽车EDR设计中
    ros编译时报Invoking "make -j4 -l4" failed
    python安装第三方库xlrd失败、更新pip失败
    python的pip命令安装request库失败、在pycharm里File>setting...>Python Interpreter里右上角点击加号搜索request点击安装也失败
    selenium之unitest库
  • 原文地址:https://www.cnblogs.com/samcn/p/1974690.html
Copyright © 2020-2023  润新知