JBoss AS 7之基本配置和部署(The Return Of The King)

1.4 JBoss As 7基本配置

1.4.1 IP訪问控制

因默认情况下,jboss仅可通过127.0.0.1和localhost来訪问。假设你想局域网中的其他IP来訪问,你能够在standalone.xml文件里进行设置。

注意,standalone单机模式下,仅仅须要改动standalone.xml文件就可以。

改动IP绑定地址,设置为本机IP地址就可以。

<interfaces>
        <interfacename="management">
            <inet-addressvalue="${jboss.bind.address.management:127.0.0.1}"/>
        </interface>
        <interface name="public">
            <inet-addressvalue="${jboss.bind.address:127.0.0.1}"/>
        </interface>
        <interfacename="unsecure">
            <inet-addressvalue="${jboss.bind.address.unsecure:127.0.0.1}"/>
        </interface>
    </interfaces>


 

红色标记的节点元素改动为:

<span style="font-size:18px;"><interface name="public">
<inet-address value="${jboss.bind.address:192.168.1.3}"/>
</interface></span>


设置为本机全部IP都可訪问JBoss应用程序,改动为:

<interface name="public">
<inet-address value="${jboss.bind.address:0.0.0.0}"/>
</interface>

 

JBoss 默认http 的webport为8080

<span style="font-size:18px;"><socket-binding name="http" port="8080"/></span>


改动为:
<socket-binding name="http" port="80"/>


port是依据设置的基准值+偏移量得到的,默认的偏移量为0。所以訪问的port为8080

<socket-binding-groupname="standard-sockets" default-interface="any"port-offset="${jboss.socket.binding.port-offset:0}">



假如改动为:

<socket-binding-groupname="standard-sockets" default-interface="any"port-offset="${jboss.socket.binding.port-offset:10}">


那么依据改动后的偏移量。得到新的訪问port为8090。

URL的编码设置:

<system-properties>
<property name="org.apache.catalina.connector.URI_ENCODING"value="UTF-8"/>
<property name="org.apache.catalina.connector.USE_BODY_ENCODING_FOR_QUERY_STRING" value="true"/>
</system-properties>


 

domain 模式下,改动配置文件是不同的。

可是,改动方法是一样的。
编辑domain/configuration/host.xml文件:

<interface name="public">
<inet-address value="${jboss.bind.address:127.0.0.1}"/>
</interface>


改动为:
<interface name="public">
<inet-address value="${jboss.bind.address:0.0.0.0}"/>
</interface>


将127.0.0.1 改动为0.0.0.0 或者仅绑定某一个IP


domain 模式中,如须要改动訪问的port,须要改动文件domain.xml在这个omain.xml文件里有standard-sockets、ha-sockets、full-sockets、full-ha-sockets、四种组类型,至于domain会调用哪个取决于domain.xml文件最后面的配置:

<server-group name="main-server-group"profile="full">
<jvm name="default">
<heap size="512m" max-size="1024m"/>
<permgen max-size="256m"/>
</jvm>
<socket-binding-group ref="full-sockets"/>
</server-group>


注意上文中的红色字体。profile=” ” 和 <socket-binding-group ref=” ”/> 表示domain模式中所调用的一些列的port,默认情况下是调用的
<socket-binding-group name="full-sockets"default-interface="public">
........
</socket-binding-group>


中的port信息,即改动此段配置中的
<socket-binding name="http" port="8080"/>
改动为:

<socket-bindingname="http" port="80"/>

 

1.5 JBossAs 7部署

以下将使用单独模式部署应用程序,全然是为演示而已。

用户能够将部署内容(war、ear、jar、sar等)放在standalone/deployments文件夹内,JBoss执行时会自己主动部署到server上,这也是开发时常採用的方式。
部署模式:
1. 自己主动部署:
扫描器直接监控部署内容,自己主动部署新的内容。在standalone.xml配置片段。

<subsystemxmlns="urn:jboss:domain:deployment-scanner:1.1">

<deployment-scanner path="deployments"relative-to="jboss.server.base.dir"scan-interval="5000"/>

</subsystem>

由以上配置中能够看出JBoss会每隔5秒钟去扫描deployments文件夹(当JBoss以standalone模式执行的时候)。您也能够将自己主动扫描的路径更改为别的地方,同一时候,您也能够配置多个自己主动扫描的路径。

由此。仅仅须要把项目包放到所扫描的文件夹。之后系统会自己主动部署。部署好了之后会生成一个内容为xxx.war的xxx.war.deployed文件。

项目在部署时会有下面几种标记文件。正如其名称一样。表示不同的含义。

.dodeploy          由用户放置,表明内容应该被部署或又一次部署到执行时

.skipdeploy       仅仅要这个文件存在, 禁用自己主动部署.

.isdeploying      部署扫描服务放置,表明它已经注意到一个. dodeploy文件,正处在部署内容的过程中,当部署完毕后。将自己主动删除这个文件。

.deployed          部署扫描服务放置。表明内容已经被部署到执行时,假设删除此文件将取消部署。

.failed       部署扫描服务放置,表明部署失败。

.isundeploying   部署扫描服务放置。表明它已经注意到一个.deployed文件已经被删除,正在取消部署内容。运行完成后这个文件也会被删除。

.undeployed     部署扫描服务放置。表明内容已经村执行时删除,假设用户删除这个文件,在手动模式下不会造成影响,自己主动模式下会又一次部署。

.pending  部署扫描服务放置,表明它已经注意到要部署内容,但尚未通知server部署,假设扫描器检測到一些自己主动部署内容仍在复制过程中,或者存在一些阻止自己主动部署的问题,将创建这个文件。仅仅要这个条件成立,扫描器不会通知server部署或取消部署不论什么内容。

手动部署的情况,可通过自己手动创建文件来部署新的项目,如:拷贝一个spring.war的项目包到deployment文件夹下,之后手动创建一个文件内容为spring.war的文件名称为spring.war.deployed的文件,之后便可訪问地址http://127.0.0.1/spring
    您也能够拷贝一个展开的项目放到deployment文件夹以下,但要确保项目文件夹名后缀为.war之类的文件文件夹,如:把spring.war项目展开到spring文件夹,须要把spring文件夹复制到deployment文件夹下,同一时候更改名字为spring.war。

相同之后创建一个文件内容为spring.war的spring.war.deployed的文件就可以。

    (注意:一定是使用java提供的jar工具打包成war文件才行。假设你改动了文件也要又一次打包。

)




posted on 2017-04-24 17:16  yjbjingcha  阅读(163)  评论(0编辑  收藏  举报

导航