`
jbosscn
  • 浏览: 149728 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JBoss7配置指南(四)

 
阅读更多

(翻译整理by Jim Ma)

4.3 JVM 设置

管理域和单独运行服务器的 JVM设置是不相同的。在管理域中, domain controller组件会负责停止和启动服务器进程,因此由它来决定 JVM的设置。在单独运行服务器中,由启动服务器的进程 (比如通过命令行参数 )负责 JVM的设置。

4.3.1 管理域

在管理域里, JVM设置可以在不同的作用域上声明 :比如在特定的服务器组,一个主机或者一个特别的服务器。如果没有显式声明, JVM设置从父作用域继承。这样可以在不同的层次上允许定制或者继承 JVM设置。

我们来看一下对一个服务器组 JVM的声明 :

<server-groups>
       <server-group name="main-server-group" profile="default">
           <jvm name="default">
               <heap size="64m" max-size="512m"/>
           </jvm>
           <socket-binding-group ref="standard-sockets"/>
       </server-group>
       <server-group name="other-server-group" profile="default">
           <jvm name="default">
               <heap size="64m" max-size="512m"/>
           </jvm>
           <socket-binding-group ref="standard-sockets"/>
       </server-group>
</server-groups>

(参见 domain/configuration/domain.xml )

在这个例子里,服务器组 "main-server-group" jvm设置成 64m heap size和 最大是 512m heap size.任何属于这个组的服务器都会集成这些 JVM设置。你可以改变整个组,或者一个特定服务器,主机的 JVM设置 :

<servers>
       <server name="server-one" group="main-server-group" auto-start="true">
           <jvm name="default"/>
       </server>
       <server name="server-two" group="main-server-group" auto-start="true">
           <jvm name="default">
               <heap size="64m" max-size="256m"/>
           </jvm>
           <socket-binding-group ref="standard-sockets" port-offset="150"/>
       </server>
       <server name="server-three" group="other-server-group" auto-start="false">
           <socket-binding-group ref="standard-sockets" port-offset="250"/>
       </server>
</servers>

(参考 domain/configuration/host.xml)

在这个例子中, server-two 属于 main-server-group 因此会继承名字为 default JVM设置,但是它在 server-two服务器上声明了一个较低的 maxium heap size

[domain@localhost:9999 /] /host=local/server-config=server-two/jvm=default:read-resource
{
   "outcome" => "success",
   "result" => {
       "heap-size" => "64m",
       "max-heap-size" => "256m",
   }
}

4.3.2 单独运行服务器

对于单独运行的服务器,则需要在执行 $JBOSS_HOME/bin/standalone.sh 脚本时使用命令行参数来设置 JVM,或者在 $JBOSS_HOME/bin/standalone.conf 声明。 (对于 windows用户,需要执行 %JBOSS_HOME%/bin/standalone.bat 和设置

%JBOSS_HOME%/bin/standalone.conf.bat.)

4.4 命令行参数

启动 JBoss AS7的管理域,需要执行 : $JBOSS_HOME/bin/domain.sh 脚本,启动单独运行的服务器需要执行 $JBOSS_HOME/bin/standalone.sh . 使用这两个脚本启动时,将会使用默认的设置。以下内容,我们讲介绍如何通过额外的命令行参数来覆盖这些默认的设置。

4.4.1系统属性

单服务器和管理域模式都使用用来设置标准位置 ( jboss.home.dir,jboss.server.config.dir)的默认设置, B这小节中介绍这些系统属性的默认值。每个系统属性,都可以通过标准的 JVM设置方式 -Dkey=value覆盖:

$JBOSS_HOME/bin/standalone.sh -Djboss.home.dir=some/location/AS7/jboss-as \
    -Djboss.server.config.dir=some/location/AS7/jboss-as/custom-standalone

以上的命令行启动一个不是标准的 AS home目录,并且使用一个特定的配置文件路径 . 具体系统属性的含义将在以下内容中介绍。

同时,你也可以使用一个 properties文件通过下面任何一种方式来覆盖配置默认的系统属性 :

$JBOSS_HOME/bin/domain.sh --properties=/some/location/jboss.properties
$JBOSS_HOME/bin/domain.sh -P=/some/location/jboss.properties

这个 properties文件是一个标准的包含 key=value对的标准 Java property文件 :

jboss.home.dir=/some/location/AS7/jboss-as
jboss.domain.config.dir=/some/location/AS7/custom-domain

单独运行模式( Standalone)

属性名

说明

默认值

java.ext.dirs

指定 JDK extension路径

null

jboss.home.dir

JBoss AS 7 安装的根目录

standalone.sh 设置为 $JBOSS_HOME

jboss.server.base.dir

server base目录

jboss.home.dir /standalone

jboss.server.config.dir

base configuration目录

jboss.server.base.dir /configuration

jboss.server.data.dir

用于存放持久化数据的目录

jboss.server.base.dir /data

jboss.server.log.dir

存放 server.log 的目录

jboss.server.base.dir /log

jboss.server.temp.dir

临时文件目录

jboss.server.base.dir /tmp

jboss.server.deploy.dir

部署目录

jboss.server.data.dir /content







管理域模式 (Managed Domain)

属性名

说明

Default value

jboss.home.dir

The root directory of the JBoss AS 7 installation.

domain.sh 设置为 $JBOSS_HOME

jboss.domain.base.dir

domain base目录

jboss.home.dir /domain

jboss.domain.config.dir

base configuration目录

jboss.domain.base.dir /configuration

jboss.domain.data.dir

用于存放持久化数据的目录 .

jboss.domain.base.dir /data

jboss.domain.log.dir

存放 host-controller.log process-controller.log 文件的目录

jboss.domain.base.dir /log

jboss.domain.temp.dir

临时文件目录

jboss.domain.base.dir /tmp

jboss.domain.deployment.dir

部署目录

jboss.domain.base.dir /content

jboss.domain.servers.dir

 

被管服务器输出存放的目录

jboss.domain.base.dir /log

4.4.2 其他命令行参数 :

第一种接收参数的格式是 :

--name=value

比如 :

$JBOSS_HOME/bin/standalone.sh --server-config=standalone-ha.xml

如果参数名是一个单词,那么使用一个” -”前缀,而不 是两个” --”:

-x=value

比如 :

$JBOSS_HOME/bin/standalone.sh -P=/some/location/jboss.properties

下面说明在单服务器和管理域模式下可用的的命令行参数 :

单服务器模式( Standalone

参数名

缺省的默认值

--server-config

jboss.server.config.dir /standalone.xml

一个相对于 jboss.server.config.dir 的路径或者是一个绝对路径

管理域模式 (Managed Domain)

参数名

缺省的默认值

--domain-config

jboss.domain.config.dir /domain.xml

一个相对于 jboss.domain.config.dir  的路径或者是一个绝对路径

--host-config

jboss.domain.config.dir /host.xml

一个相对于 jboss.domain.config.dir  的路径或者是一个绝对路径

 

下面的参数不需要指定值,并且只能被用于 host controller.(比如被配置连接到远程 domain controller的主机 )

 

参数名

功能

--backup

使从 host controller创建和维护一个域配置的本地拷贝

--cached-dc

如果从 (slave)host controller在启动时不能连接主 domain controller取得配置信息,那么通过 -bakcup创建的本地拷贝将会被使用。同时 slave host controller不会改变任何 domain的配置,仅启动服务器。

 

通用参数 (Common parameters)

这些没有值的参数既适用于单服务器模式也适用于管理域模式。下表介绍这些参数的使用 :

参数

功能

--version
-V

打印 JBossAS的版本信息,并且退出 JVM

--help
-h

打印各参数的帮助信息,并且退出 JVM

4.5 子系统配置

在以下章节中将集中介绍通过 CLI web接口进行操作的高级管理用例 .对于每个子系统详细的配置属性,请参考每个子系统的参考文档。

Schema Location

配置的 schema 文件都在目录 $JBOSS_HOME/docs/schema .

4.5.1 数据源 (Data sources)

Datasources 在通过子系统进行配置。声明一个新的数据源,需要两个步骤 : 提供一个 JDBC 驱动,然后定义一个使用这个 JDBC驱动的数据源。 

4.5.1.1 JDBC 驱动安装

在应用服务器中安装 JDBC驱动推荐使用一个常规的 jar进行部署。因为当在域模式下运行应用服务器时,部署的内容会自动传送到要部署的所有服务器上,因此使用 jar文件将利用这一特性而不需要关心额外的事情。

任何符合 JDBC4的启动将会被自动识别并且按照名字和版本安装到系统中。 JDBC jar使用 Java server provider机制进行识别。 Jar文件中需要包含一个文件名是 META-INF/services/java.sql.Driver 的文本文件 ,这个文件中包含在这个 jar里的驱动类的名称。如果你的 JDBC驱动 jar不符合 JDBC规范,我们通过其他方式也可以部署这样的驱动。

修改 Jar 文件

最直接的方式是简单的修改 Jar文件添加缺失的文件。你可以通过一下命令添加 :

The most straightforward solution is to simply modify the JAR and add the missing file. You can do

  1. 改变路径到或者创建一个空的临时文件夹 .

  2. 创建一个 META-INF 子目录

  3. 创建一个 META-INF/services 子目录

  4. 创建 一个只包含一行内容 :JDBC驱动类的全名的文件 META-INF/services/java.sql.Driver .

  5. 使用 jar命令来跟新这个 jar文件 :

jar \-uf jdbc-driver.jar META-INF/services/java.sql.Driver
如何部署

JDBC4驱动

jar文件,请参考”应用部署 “章节。


4.5.1.2 数据源定义 (Datasource Definitions)

数据源在 datasources子系统里定义 :

<subsystem xmlns="urn:jboss:domain:datasources:1.0">
    <datasources>
        <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS">
            <connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1</connection-url>
            <driver>h2</driver>
            <pool>
                <min-pool-size>10</min-pool-size>
                <max-pool-size>20</max-pool-size>
                <prefill>true</prefill>
            </pool>
            <security>
                <user-name>sa</user-name>
                <password>sa</password>
            </security>
        </datasource>
        <xa-datasource jndi-name="java:jboss/datasources/ExampleXADS" pool-name="ExampleXADS">
           <driver>h2</driver>
           <xa-datasource-property name="URL">jdbc:h2:mem:test</xa-datasource-property>
           <xa-pool>
                <min-pool-size>10</min-pool-size>
                <max-pool-size>20</max-pool-size>
                <prefill>true</prefill>
           </xa-pool>
           <security>
                <user-name>sa</user-name>
                <password>sa</password>
           </security>
        </xa-datasource>
        <drivers>
            <driver name="h2" module="com.h2database.h2">
                <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
            </driver>
        </drivers>
  </datasources>

</subsystem>

(参见 standalone/configuration/standalone.xml )

如以上示例所示,数据源通过逻辑名来引用 JDBC驱动 .通过命令行 (CLI)可以很方便的查询同样的信息 :

[standalone@localhost:9999 /] /subsystem=datasources:read-resource(recursive=true)
{
    "outcome" => "success",
    "result" => {
        "data-source" => {"java:/H2DS" => {
            "connection-url" => "jdbc:h2:mem:test;DB_CLOSE_DELAY=-1",
            "jndi-name" => "java:/H2DS",
            "driver-name" => "h2",
            "pool-name" => "H2DS",
            "use-java-context" => true,
            "enabled" => true,
            "jta" => true,
            "pool-prefill" => true,
            "pool-use-strict-min" => false,
            "user-name" => "sa",
            "password" => "sa",
            "flush-strategy" => "FailingConnectionOnly",
            "background-validation" => false,
            "use-fast-fail" => false,
            "validate-on-match" => false,
            "use-ccm" => true
        }},
        "xa-data-source" => undefined,
        "jdbc-driver" => {"h2" => {
            "driver-name" => "h2",
            "driver-module-name" => "com.h2database.h2",
            "driver-xa-datasource-class-name" => "org.h2.jdbcx.JdbcDataSource"
        }}
    }
}


[standalone@localhost:9999 /] /subsystem=datasources:installed-drivers-list
{
    "outcome" => "success",
    "result" => [{
        "driver-name" => "h2",
        "deployment-name" => undefined,
        "driver-module-name" => "com.h2database.h2",
        "module-slot" => "main",
        "driver-xa-datasource-class-name" => "org.h2.jdbcx.JdbcDataSource",
        "driver-class-name" => "org.h2.Driver",
        "driver-major-version" => 1,
        "driver-minor-version" => 2,
        "jdbc-compliant" => true
    }]
}

使用 web控制台和命令行可以极大的简化 JDBC驱动的部署和数据源的创建。

 

 

命令行方式提供了一些列的命令来创建和更改数据源 :

 

[standalone@localhost:9999 /] help
Supported commands:

 [...]

 data-source             - allows to add new, modify and remove existing data sources
 xa-data-source          - allows add new, modify and remove existing XA data sources

特定命令的详细描述请使用”

-b”参数查询。


4.5. 1. 3 参考

datasource子系统由 IronJacamar 项目提供。更多关于配置属性和属性的详细介绍请参考项目文档 :

4.5.2 消息 (Messaging)

JMS服务器需要通过 messaging子系统进行配置。在本章节中,我们将概括介绍常用的配置项。其他详细的介绍,请参考 HornetQ用户指南 (参见 "参考 "). 

4.5.2.1 Connection Factories

JMS connection factories 可以分为两类 : In-VM connection factory和 被远程客户端使用的 connections factories. 每个 connecton factory都引用一个 connector ,每个

connector都关联到一个 socket binding. Connection Factory entry定义 factory被暴露的 JNDI name.

<subsystem xmlns="urn:jboss:domain:messaging:1.0">
   [...]
<connectors>
   <in-vm-connector name="in-vm" server-id="0"/>
   <netty-connector name="netty" socket-binding="messaging"/>
   <netty-connector name="netty-throughput" socket-binding="messaging-throughput">
       <param key="batch-delay" value="50"/>
   </netty-connector>
</connectors>
   [...]
<jms-connection-factories>
   <connection-factory name="InVmConnectionFactory">
       <connectors>
           <connector-ref connector-name="in-vm"/>
       </connectors>
       <entries>
           <entry name="java:/ConnectionFactory"/>
       </entries>
   </connection-factory>
   <connection-factory name="RemoteConnectionFactory">
       <connectors>
           <connector-ref connector-name="netty"/>
       </connectors>
       <entries>
           <entry name="RemoteConnectionFactory"/>
       </entries>
   </connection-factory>
   <pooled-connection-factory name="hornetq-ra">
       <connectors>
           <connector-ref connector-name="in-vm"/>
       </connectors>
       <entries>
           <entry name="java:/JmsXA"/>
       </entries>
   </pooled-connection-factory>
</jms-connection-factories>
[...]
</subsystem>

( 参见 standalone/configuration/standalone.xml)

4.5.2.2 Queues and Topics

Queues topics messaging 子系统的子资源 .每个 Entry指定一个 queue或者 topic JNDI :

<subsystem xmlns="urn:jboss:domain:messaging:1.0">
   [...]
   <jms-destinations>
       <jms-queue name="testQueue">
           <entry name="queue/test"/>
       </jms-queue>
       <jms-topic name="testTopic">
           <entry name="topic/test"/>
       </jms-topic>
   </jms-destinations>
</subsystem>

(参见 standalone/configuration/standalone.xml)

JMS endpoints 通过命令行方式可以很容易的创建 :

[standalone@localhost:9999 /] add-jms-queue --name=myQueue --entries=queues/myQueue

[standalone@localhost:9999 /] /subsystem=messaging/jms-queue=myQueue:read-resource
{
   "outcome" => "success",
   "result" => {"entries" => ["queues/myQueue"]},
   "compensating-operation" => undefined
}
JbossAS同时也提供了其他很多的维护

JMS子系统的命令

:
[standalone@localhost:9999 /] help
Supported commands:
[...]
add-jms-queue           - creates a new JMS queue
remove-jms-queue        - removes an existing JMS queue
add-jms-topic           - creates a new JMS topic
remove-jms-topic        - removes an existing JMS topic
add-jms-cf              - creates a new JMS connection factory
remove-jms-cf           - removes an existing JMS connection factory

获取更多命令行的详细信息,请使用”

--help”参数获取。


4.5.2.3 Dead Letter Redelivery

有些设置可以在通配符地址上生效,而不是一个特别的 messaging destination.Dead letter queue redelivery设置就可以使用通配符地址 :

<subsystem xmlns="urn:jboss:domain:messaging:1.0">
[...]
<address-settings>
   <address-setting match="#">
       <dead-letter-address>
           jms.queue.DLQ
       </dead-letter-address>
       <expiry-address>
           jms.queue.ExpiryQueue
       </expiry-address>
       <redelivery-delay>
           0
       </redelivery-delay>
       [...]
   </address-setting>
</address-settings>
[...]
</subsystem>

(参见 standalone/configuration/standalone.xml)

4.5.2.4 安全性

安全性的设置也可以使用通配符地址生效,如同 DLQ redelivery设置一样 :

<subsystem xmlns="urn:jboss:domain:messaging:1.0">
[...]
<security-settings>
   <security-setting match="#">
       <permission type="send" roles="guest"/>
       <permission type="consume" roles="guest"/>
       <permission type="createNonDurableQueue" roles="guest"/>
       <permission type="deleteNonDurableQueue" roles="guest"/>
   </security-setting>
</security-settings>
[...]
</subsystem>

(参见 standalone/configuration/standalone.xml)

4.5.2.5 参考

Messaging 子系统由 Hornetq项目提供。详细的关于可用的配置项信息,请查询 hornetq项目文档。

4.5. 3 Web

Web子系统的配置由三个部分组成 :JSP, connectors virtural servers。高级特性如 :负载均衡, failover等将在高”可用性指南”中介绍。默认配置对于大多数的用例都可以提供合理的性能。

需要的扩展 :

<extension module="org.jboss.as.web" />

基本子系统配置的例子 :

  <subsystem xmlns="urn:jboss:domain:web:1.0" default-virtual-server="default-host">
      <connector name="http" scheme="http" protocol="HTTP/1.1" socket-binding="http"/>
      <virtual-server name="default-host" enable-welcome-root="true">
         <alias name="localhost" />
         <alias name="example.com" />
      </virtual-server>
   </subsystem>

依赖于其他子系统 :

.

4.5. 3. 1容器设置 (Container configuration)
JSP设置 (JSP Configuration)

这里的”配置“包含了所有关于 servlet engine自身的设置。详细的关于配置属性的介绍,请参考 JBossWeb有关文档.

[standalone@localhost:9999 /] /subsystem=web:read-resource               
{
    "outcome" => "success",
    "result" => {
        "configuration" => {
            "static-resources" => {
                "sendfile" => 49152,
                "max-depth" => 3,
                "read-only" => true,
                "webdav" => false,
                "listings" => false,
                "disabled" => false
            },
            "jsp-configuration" => {
                "development" => false,
                "keep-generated" => true,
                "recompile-on-fail" => false,
                "check-interval" => 0,
                "modification-test-interval" => 4,
                "display-source-fragment" => true,
                "error-on-use-bean-invalid-class-attribute" => false,
                "java-encoding" => "UTF8",
                "tag-pooling" => true,
                "generate-strings-as-char-arrays" => false,
                "target-vm" => "1.5",
                "dump-smap" => false,
                "mapped-file" => true,
                "disabled" => false,
                "source-vm" => "1.5",
                "trim-spaces" => false,
                "smap" => true
            }
        },
        "connector" => {"http" => undefined},
        "virtual-server" => {"localhost" => undefined}
    }
}

(参见 standalone/configuration/standalone.xml)

4.5. 3. 2 Connector设置 (Connector configuration)

Connecotrs web子系统的子资源。每个 connector都引用一个特定的 socket binding:

[standalone@localhost:9999 /] /subsystem=web:read-children-names(child-type=connector)
{
    "outcome" => "success",
    "result" => ["http"]
}

[standalone@localhost:9999 /] /subsystem=web/connector=http:read-resource(recursive=true)
{
    "outcome" => "success",
    "result" => {
        "protocol" => "HTTP/1.1",
        "scheme" => "http",
        "socket-binding" => "http",
        "ssl" => undefined,
        "virtual-server" => undefined
    }
}

创建一个 connector需要先声明一个 socket binding

[standalone@localhost:9999 /] /socket-binding-group=standard-sockets/socket-binding=custom:add(port=8181)
新创建的没有被使用的





socket binding可以用来创建一个新的





connector配置





:
[standalone@localhost:9999 /] /subsystem=web/connector=test-connector:add(
               socket-binding=custom, scheme=http, protocol="HTTP/1.1", enabled=true
               )

web子系统可以配置三种类型的 connecotr:

HTTP Connectors

默认的 connector,通常运行在 8080端口。配置请参考以上内容

HTTPS Connectors

HTTPS connectors web子系统的子资源。默认使用 JSSE.每个 connector引用一个特定的 socket binding

[standalone@localhost:9999 /] /subsystem=web:read-children-names(child-type=connector)
{
    "outcome" => "success",
    "result" => [
        "ajp",
        "http",
        "https"
    ]
}
[standalone@localhost:9999 /] /subsystem=web/connector=https:read-resource(recursive=true)
{
    "outcome" => "success",
    "result" => {
        "protocol" => "HTTP/1.1",
        "scheme" => "https",
        "secure" => true,
        "socket-binding" => "https",
        "ssl" => {},
        "virtual-server" => undefined
    }
}

创建一个新的 connector首先需要声明一个新的 socket binding:

[standalone@localhost:9999 /] /socket-binding-group=standard-sockets/socket-binding=https:add(port=8443)
新创建的,没有使用的





socket binding可被用来设置新创建的





connecotr






[standalone@localhost:9999 /] /subsystem=web/connector=test-connector:add(socket-binding=https, scheme=https, protocol="HTTP/1.1", enabled=true, ssl = {})

默认 SSL使用” tomcat”别名和” changit”密码。可以使用 keytool来创建相应的 keystore:

keytool -genkey -alias tomcat -keyalg RSA

当然需要指定值是” changeit”的密码。

AJP Connectors

AJP Connectors web子系统的子资源。它和前段 apache httpd mod_jdk,mode_proxy mod_cluster一起使用。

每个 connecotor都引用一个特定的 socket binding:

[standalone@localhost:9999 /] /subsystem=web:read-children-names(child-type=connector)
{
    "outcome" => "success",
    "result" => [
        "ajp",
        "http"
    ]
}

[standalone@localhost:9999 /] /subsystem=web/connector=ajp:read-resource(recursive=true)
{
    "outcome" => "success",
    "result" => {
        "protocol" => "AJP/1.3",
        "scheme" => "http",
        "socket-binding" => "ajp",
        "ssl" => undefined,
        "virtual-server" => undefined
    }
}

创建一个新的 connector首先需要声明一个新的 socket binding:

[standalone@localhost:9999 /] /socket-binding-group=standard-sockets/socket-binding=ajp:add(port=8009)

新创建的,没有使用的





socket binding可被用来设置新创建的





connecotr






[standalone@localhost:9999 /] /subsystem=web/connector=ajp:add(
               socket-binding=ajpm, protocol="AJP/1.3", enabled=true
               )
Native Connectors

Native connectors是基于 Tomcat native的高性能的 connectors.如果 nativie模块安装的话,就可以使用 native connectors

目前很多发布已经包含 jboss web native(如果你还没有试用过 JBoss web native)

在配置层面,由于使用 OpenSSL,只有 SSL部分需要被不同的配置。

[standalone@localhost:9999 /] /subsystem=web/connector=https:read-resource(recursive=true)
{
    "outcome" => "success",
    "result" => {
        "protocol" => "HTTP/1.1",
        "scheme" => "https",
        "secure" => true,
        "socket-binding" => "https",
        "ssl" => {
            "certificate-file" => "/home/jfclere/CERTS/SERVER/newcert.pem",
            "certificate-key-file" => "/home/jfclere/CERTS/SERVER/newkey.pem",
            "password" => "xxxxxxx"
        },
        "virtual-server" => undefined
    }
}
4.5. 3. 3 Virtual-server 配置( Virtual-Server configuration

connector类似, virtual server 声明 web 子系统的子资源。可以通过使用别名来引用 virtual server,

同时 virtual server 也可以指定默认的 web 应用来充当 root web context

[standalone@localhost:9999 /] /subsystem=web:read-children-names(child-type=virtual-server)
{
    "outcome" => "success",
    "result" => ["localhost"]
}

[standalone@localhost:9999 /] /subsystem=web/virtual-server=default-host:read-resource
{
    "outcome" => "success",
    "result" => {
        "access-log" => undefined,
        "alias" => ["example.com"],
        "default-web-module" => undefined,
        "enable-welcome-root" => true,
        "rewrite" => undefined
    }
}

增加一个 virtual server的声明可以通过默认的 add操作 :

[standalone@localhost:9999 /] /subsystem=web/virtual-server=example.com:add

[standalone@localhost:9999 /] /subsystem=web/virtual-server=example.com:remove

configuration tree上任意一个节点上都可以执行增加和删除操作

4.5. 3. 4 参考:

Web子系统部件由 jboss web项目提供。关于 web子系统可配置的属性的详细介绍,请参考 JBoss Web文档 :

4. 5. 4 Web services

Web service endpoint 通过包含有 webservice endpoint 实现的部署来提供 因此他们可以通过部署资源进行查询。

进一步的信息,请参考”应用部署”章节。 每个 webservice endpoint 都需要指定一个 web context 和一个 wsdl URL :

[standalone@localhost:9999 /] /deployment="*"/subsystem=webservices/endpoint="*":read-resource
{
   "outcome" => "success",
   "result" => [{
       "address" => [
           ("deployment" => "jaxws-samples-handlerchain.war"),
           ("subsystem" => "webservices"),
           ("endpoint" => "jaxws-samples-handlerchain:TestService")
       ],
       "outcome" => "success",
       "result" => {
           "class" => "org.jboss.test.ws.jaxws.samples.handlerchain.EndpointImpl",
           "context" => "jaxws-samples-handlerchain",
           "name" => "TestService",
           "type" => "JAXWS_JSE",
           "wsdl-url" => "http://localhost:8080/jaxws-samples-handlerchain?wsdl"
       }
   }]
}

4. 5. 4. 1参考 :

Webservice 子系统由 JBossWS项目提供。关于 websevice子系统可配置的属性的详细介绍,请参考 JBoss WS文档 :



分享到:
评论
10 楼 jiamingw 2016-03-04  
求教楼主
       通过JMX远程监控JBoss-as-7.1.1应用服务器  JConsole远程连接JBoss服务器  如何配置服务器上JBoss
       如能会出万分感激
9 楼 jcyanfan 2015-08-17  
mime-mapping 有没有公共的配置文件
8 楼 jbosscn 2012-06-27  
从https://community.jboss.org/message/643825来看,这个只在jboss 7.1.0 beta1以上才支持? 7.0.2也工作?

helper_wj 写道
jboss-as-7.0.2\standalone\configuration\standalone.xml

<server xmlns="urn:jboss:domain:1.1">
...
    <system-properties>
        <!-- URI 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>
...
</server>


jboss-as-7.0.2\domain\configuration\domain.xml

<domain xmlns="urn:jboss:domain:1.1">
...
    <system-properties>
        <!-- IPv4 is not required, but setting this helps avoid unintended use of IPv6 -->
        <property name="java.net.preferIPv4Stack" value="true"/>
        <!-- URI 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>
...
</server>

7 楼 helper_wj 2012-05-14  
jboss-as-7.0.2\standalone\configuration\standalone.xml

<server xmlns="urn:jboss:domain:1.1">
...
    <system-properties>
        <!-- URI 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>
...
</server>


jboss-as-7.0.2\domain\configuration\domain.xml

<domain xmlns="urn:jboss:domain:1.1">
...
    <system-properties>
        <!-- IPv4 is not required, but setting this helps avoid unintended use of IPv6 -->
        <property name="java.net.preferIPv4Stack" value="true"/>
        <!-- URI 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>
...
</server>
6 楼 jbosscn 2011-11-22  
dengkehai 写道
楼主你好,
jboss7中如何配置URIEncoding属性的值来解决url请求参数中包含中文的编码问题,能否介绍下,谢谢。

刚看了jboss7种jbossweb子系统的代码,好像这个URIEncoding还没有支持。你可以到https://issues.jboss.org/browse/AS7 报一个issue.
5 楼 dengkehai 2011-11-21  
楼主你好,
jboss7中如何配置URIEncoding属性的值来解决url请求参数中包含中文的编码问题,能否介绍下,谢谢。
4 楼 jbosscn 2011-10-11  
为了更好的管理部署的内容,以及对domain的支持,jboss7不支持虚拟目录。
3 楼 tangduDream 2011-10-08  
    请问一下 jboss7 如何配置虚拟目录?


    
2 楼 jbosscn 2011-09-27  
你可以修改standalone.xml,添加access-log到web subsystem.       
<subsystem xmlns="urn:jboss:domain:web:1.0" default-virtual-server="default-host">
            <connector name="http" protocol="HTTP/1.1" socket-binding="http" scheme="http"/>
            <virtual-server name="default-host" enable-welcome-root="true">
                <alias name="localhost"/>
                <alias name="example.com"/>
                <access-log/>
            </virtual-server>
        </subsystem>

现在配置起来更加简单了!
1 楼 y711 2011-09-26  
您好:
能否介绍下jboss7中如何开启http access log?
因为jboss7之前的jboss版本,都是可以打开http的access log的,在server.xml中配置的。但jboss7之后,好像只有server log了,我没找到在哪里可以打开access log。
能介绍下么?多谢。

相关推荐

Global site tag (gtag.js) - Google Analytics