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

<domain xmlns="urn:jboss:domain:1.1">

    <extensions>
        <extension module="org.jboss.as.clustering.infinispan"/>
        <extension module="org.jboss.as.clustering.jgroups"/>
        <extension module="org.jboss.as.cmp"/>
        <extension module="org.jboss.as.configadmin"/>
        <extension module="org.jboss.as.connector"/>
        <extension module="org.jboss.as.ee"/>
        <extension module="org.jboss.as.ejb3"/>
        <extension module="org.jboss.as.jacorb"/>
        <extension module="org.jboss.as.jaxr"/>
        <extension module="org.jboss.as.jaxrs"/>
        <extension module="org.jboss.as.jdr"/>
        <extension module="org.jboss.as.jmx"/>
        <extension module="org.jboss.as.jpa"/>
        <extension module="org.jboss.as.jsr77"/>
        <extension module="org.jboss.as.logging"/>
        <extension module="org.jboss.as.mail"/>
        <extension module="org.jboss.as.messaging"/>
        <extension module="org.jboss.as.modcluster"/>
        <extension module="org.jboss.as.naming"/>
        <extension module="org.jboss.as.osgi"/>
        <extension module="org.jboss.as.pojo"/>
        <extension module="org.jboss.as.remoting"/>
        <extension module="org.jboss.as.sar"/>
        <extension module="org.jboss.as.security"/>
        <extension module="org.jboss.as.threads"/>
        <extension module="org.jboss.as.transactions"/>
        <extension module="org.jboss.as.web"/>
        <extension module="org.jboss.as.webservices"/>
        <extension module="org.jboss.as.weld"/>
    </extensions>

    <system-properties>
        <!-- IPv4 is not required, but setting this helps avoid unintended use of IPv6 -->
        <property name="java.net.preferIPv4Stack" value="true"/>
    </system-properties>

    <profiles>
        <profile name="default">
            <subsystem xmlns="urn:jboss:domain:logging:1.1">
                <console-handler name="CONSOLE">
                    <level name="INFO"/>
                    <formatter>
                        <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
                    </formatter>
                </console-handler>
                <periodic-rotating-file-handler name="FILE">
                    <formatter>
                        <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
                    </formatter>
                    <file relative-to="jboss.server.log.dir" path="server.log"/>
                    <suffix value=".yyyy-MM-dd"/>
                    <append value="true"/>
                </periodic-rotating-file-handler>
                <logger category="com.arjuna">
                    <level name="WARN"/>
                </logger>
                <logger category="org.apache.tomcat.util.modeler">
                    <level name="WARN"/>
                </logger>
                <logger category="sun.rmi">
                    <level name="WARN"/>
                </logger>
                <logger category="jacorb">
                    <level name="WARN"/>
                </logger>
                <logger category="jacorb.config">
                    <level name="ERROR"/>
                </logger>
                <root-logger>
                    <level name="INFO"/>
                    <handlers>
                        <handler name="CONSOLE"/>
                        <handler name="FILE"/>
                    </handlers>
                </root-logger>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:configadmin:1.0"/>
            <subsystem xmlns="urn:jboss:domain:datasources:1.0">
                <datasources>
                    <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">
                        <connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1</connection-url>
                        <driver>h2</driver>
                        <security>
                            <user-name>sa</user-name>
                            <password>sa</password>
                        </security>
                    </datasource>
                    <drivers>
                        <driver name="h2" module="com.h2database.h2">
                            <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
                        </driver>
                    </drivers>
                </datasources>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:ee:1.0"/>
            <subsystem xmlns="urn:jboss:domain:ejb3:1.2">
                <session-bean>
                    <stateless>
                        <bean-instance-pool-ref pool-name="slsb-strict-max-pool"/>
                    </stateless>
                    <stateful default-access-timeout="5000" cache-ref="simple"/>
                    <singleton default-access-timeout="5000"/>
                </session-bean>
                <mdb>
                    <resource-adapter-ref resource-adapter-name="hornetq-ra"/>
                    <bean-instance-pool-ref pool-name="mdb-strict-max-pool"/>
                </mdb>
                <pools>
                    <bean-instance-pools>
                        <strict-max-pool name="slsb-strict-max-pool" max-pool-size="20" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>
                        <strict-max-pool name="mdb-strict-max-pool" max-pool-size="20" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>
                    </bean-instance-pools>
                </pools>
                <caches>
                    <cache name="simple" aliases="NoPassivationCache"/>
                    <cache name="passivating" passivation-store-ref="file" aliases="SimpleStatefulCache"/>
                </caches>
                <passivation-stores>
                    <file-passivation-store name="file"/>
                </passivation-stores>
                <async thread-pool-name="default"/>
                <timer-service thread-pool-name="default">
                    <data-store path="timer-service-data" relative-to="jboss.server.data.dir"/>
                </timer-service>
                <remote connector-ref="remoting-connector" thread-pool-name="default"/>
                <thread-pools>
                    <thread-pool name="default">
                        <max-threads count="10"/>
                        <keepalive-time time="100" unit="milliseconds"/>
                    </thread-pool>
                </thread-pools>
                <iiop enable-by-default="false" use-qualified-name="false"/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:infinispan:1.1" default-cache-container="hibernate">
                <cache-container name="hibernate" default-cache="local-query">
                    <local-cache name="entity">
                        <transaction mode="NON_XA"/>
                        <eviction strategy="LRU" max-entries="10000"/>
                        <expiration max-idle="100000"/>
                    </local-cache>
                    <local-cache name="local-query">
                        <transaction mode="NONE"/>
                        <eviction strategy="LRU" max-entries="10000"/>
                        <expiration max-idle="100000"/>
                    </local-cache>
                    <local-cache name="timestamps">
                        <transaction mode="NONE"/>
                        <eviction strategy="NONE"/>
                    </local-cache>
                </cache-container>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jaxrs:1.0"/>
            <subsystem xmlns="urn:jboss:domain:jca:1.1">
                <archive-validation enabled="true" fail-on-error="true" fail-on-warn="false"/>
                <bean-validation enabled="false"/>
                <default-workmanager>
                    <short-running-threads>
                        <core-threads count="50"/>
                        <queue-length count="50"/>
                        <max-threads count="50"/>
                        <keepalive-time time="10" unit="seconds"/>
                    </short-running-threads>
                    <long-running-threads>
                        <core-threads count="50"/>
                        <queue-length count="50"/>
                        <max-threads count="50"/>
                        <keepalive-time time="10" unit="seconds"/>
                    </long-running-threads>
                </default-workmanager>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jdr:1.0"/>
            <subsystem xmlns="urn:jboss:domain:jmx:1.1">
                <show-model value="true"/>
                <remoting-connector/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jpa:1.0">
                <jpa default-datasource=""/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:mail:1.0">
                <mail-session jndi-name="java:jboss/mail/Default">
                    <smtp-server outbound-socket-binding-ref="mail-smtp"/>
                </mail-session>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:naming:1.1"/>
            <subsystem xmlns="urn:jboss:domain:osgi:1.2" activation="lazy">
                <properties>
                    <!-- Specifies the beginning start level of the framework -->
                    <property name="org.osgi.framework.startlevel.beginning">1</property>
                </properties>
                <capabilities>
                    <!-- modules registered with the OSGi layer on startup -->
                    <capability name="javax.servlet.api:v25"/>
                    <capability name="javax.transaction.api"/>
                    <!-- bundles started in startlevel 1 -->
                    <capability name="org.apache.felix.log" startlevel="1"/>
                    <capability name="org.jboss.osgi.logging" startlevel="1"/>
                    <capability name="org.apache.felix.configadmin" startlevel="1"/>
                    <capability name="org.jboss.as.osgi.configadmin" startlevel="1"/>
                </capabilities>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:pojo:1.0"/>
            <subsystem xmlns="urn:jboss:domain:remoting:1.1">
                <connector name="remoting-connector" socket-binding="remoting" security-realm="ApplicationRealm"/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:resource-adapters:1.0"/>
            <subsystem xmlns="urn:jboss:domain:sar:1.0"/>
            <subsystem xmlns="urn:jboss:domain:security:1.1">
                <security-domains>
                    <security-domain name="other" cache-type="default">
                        <authentication>
                            <login-module code="Remoting" flag="optional">
                                <module-option name="password-stacking" value="useFirstPass"/>
                            </login-module>
                            <login-module code="RealmUsersRoles" flag="required">
                                <module-option name="usersProperties" value="${jboss.domain.config.dir}/application-users.properties"/>
                                <module-option name="rolesProperties" value="${jboss.domain.config.dir}/application-roles.properties"/>
                                <module-option name="realm" value="ApplicationRealm"/>
                                <module-option name="password-stacking" value="useFirstPass"/>
                            </login-module>
                        </authentication>
                    </security-domain>
                    <security-domain name="jboss-web-policy" cache-type="default">
                        <authorization>
                            <policy-module code="Delegating" flag="required"/>
                        </authorization>
                    </security-domain>
                    <security-domain name="jboss-ejb-policy" cache-type="default">
                        <authorization>
                            <policy-module code="Delegating" flag="required"/>
                        </authorization>
                    </security-domain>
                </security-domains>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:threads:1.1"/>
            <subsystem xmlns="urn:jboss:domain:transactions:1.1">
                <core-environment>
                    <process-id>
                        <uuid/>
                    </process-id>
                </core-environment>
                <recovery-environment socket-binding="txn-recovery-environment" status-socket-binding="txn-status-manager"/>
                <coordinator-environment default-timeout="300"/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host" native="false">
                <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/>
                <virtual-server name="default-host" enable-welcome-root="true">
                    <alias name="localhost"/>
                    <alias name="example.com"/>
                </virtual-server>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:webservices:1.1">
                <modify-wsdl-address>true</modify-wsdl-address>
                <wsdl-host>${jboss.bind.address:127.0.0.1}</wsdl-host>
                <endpoint-config name="Standard-Endpoint-Config"/>
                <endpoint-config name="Recording-Endpoint-Config">
                    <pre-handler-chain name="recording-handlers" protocol-bindings="##SOAP11_HTTP ##SOAP11_HTTP_MTOM ##SOAP12_HTTP ##SOAP12_HTTP_MTOM">
                        <handler name="RecordingHandler" class="org.jboss.ws.common.invocation.RecordingServerHandler"/>
                    </pre-handler-chain>
                </endpoint-config>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:weld:1.0"/>
        </profile>

        <profile name="ha">
            <subsystem xmlns="urn:jboss:domain:logging:1.1">
                <console-handler name="CONSOLE">
                    <level name="INFO"/>
                    <formatter>
                        <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
                    </formatter>
                </console-handler>
                <periodic-rotating-file-handler name="FILE">
                    <formatter>
                        <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
                    </formatter>
                    <file relative-to="jboss.server.log.dir" path="server.log"/>
                    <suffix value=".yyyy-MM-dd"/>
                    <append value="true"/>
                </periodic-rotating-file-handler>
                <logger category="com.arjuna">
                    <level name="WARN"/>
                </logger>
                <logger category="org.apache.tomcat.util.modeler">
                    <level name="WARN"/>
                </logger>
                <logger category="sun.rmi">
                    <level name="WARN"/>
                </logger>
                <logger category="jacorb">
                    <level name="WARN"/>
                </logger>
                <logger category="jacorb.config">
                    <level name="ERROR"/>
                </logger>
                <root-logger>
                    <level name="INFO"/>
                    <handlers>
                        <handler name="CONSOLE"/>
                        <handler name="FILE"/>
                    </handlers>
                </root-logger>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:configadmin:1.0"/>
            <subsystem xmlns="urn:jboss:domain:datasources:1.0">
                <datasources>
                    <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">
                        <connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1</connection-url>
                        <driver>h2</driver>
                        <security>
                            <user-name>sa</user-name>
                            <password>sa</password>
                        </security>
                    </datasource>
                    <drivers>
                        <driver name="h2" module="com.h2database.h2">
                            <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
                        </driver>
                    </drivers>
                </datasources>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:ee:1.0"/>
            <subsystem xmlns="urn:jboss:domain:ejb3:1.2">
                <session-bean>
                    <stateless>
                        <bean-instance-pool-ref pool-name="slsb-strict-max-pool"/>
                    </stateless>
                    <stateful default-access-timeout="5000" cache-ref="simple" clustered-cache-ref="clustered"/>
                    <singleton default-access-timeout="5000"/>
                </session-bean>
                <mdb>
                    <resource-adapter-ref resource-adapter-name="hornetq-ra"/>
                    <bean-instance-pool-ref pool-name="mdb-strict-max-pool"/>
                </mdb>
                <pools>
                    <bean-instance-pools>
                        <strict-max-pool name="slsb-strict-max-pool" max-pool-size="20" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>
                        <strict-max-pool name="mdb-strict-max-pool" max-pool-size="20" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>
                    </bean-instance-pools>
                </pools>
                <caches>
                    <cache name="simple" aliases="NoPassivationCache"/>
                    <cache name="passivating" passivation-store-ref="file" aliases="SimpleStatefulCache"/>
                    <cache name="clustered" passivation-store-ref="infinispan" aliases="StatefulTreeCache"/>
                </caches>
                <passivation-stores>
                    <file-passivation-store name="file"/>
                    <cluster-passivation-store name="infinispan" cache-container="ejb"/>
                </passivation-stores>
                <async thread-pool-name="default"/>
                <timer-service thread-pool-name="default">
                    <data-store path="timer-service-data" relative-to="jboss.server.data.dir"/>
                </timer-service>
                <remote connector-ref="remoting-connector" thread-pool-name="default"/>
                <thread-pools>
                    <thread-pool name="default">
                        <max-threads count="10"/>
                        <keepalive-time time="100" unit="milliseconds"/>
                    </thread-pool>
                </thread-pools>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:infinispan:1.1" default-cache-container="cluster">
                <cache-container name="cluster" aliases="ha-partition" default-cache="default">
                    <transport lock-timeout="60000"/>
                    <replicated-cache name="default" mode="SYNC" batching="true">
                        <locking isolation="REPEATABLE_READ"/>
                    </replicated-cache>
                </cache-container>
                <cache-container name="web" aliases="standard-session-cache" default-cache="repl">
                    <transport lock-timeout="60000"/>
                    <replicated-cache name="repl" mode="ASYNC" batching="true">
                        <file-store/>
                    </replicated-cache>
                    <replicated-cache name="sso" mode="SYNC" batching="true"/>
                    <distributed-cache name="dist" mode="ASYNC" batching="true">
                        <file-store/>
                    </distributed-cache>
                </cache-container>
                <cache-container name="ejb" aliases="sfsb sfsb-cache" default-cache="repl">
                    <transport lock-timeout="60000"/>
                    <replicated-cache name="repl" mode="ASYNC" batching="true">
                        <eviction strategy="LRU"/>
                        <file-store/>
                    </replicated-cache>
                    <!-- Clustered cache used internally by EJB subsytem for managing the client-mapping(s) of
                    the socketbinding referenced by the EJB remoting connector -->
                    <replicated-cache name="remote-connector-client-mappings" mode="SYNC" batching="true"/>
                    <distributed-cache name="dist" mode="ASYNC" batching="true">
                        <eviction strategy="LRU"/>
                        <file-store/>
                    </distributed-cache>
                </cache-container>
                <cache-container name="hibernate" default-cache="local-query">
                    <transport lock-timeout="60000"/>
                    <local-cache name="local-query">
                        <transaction mode="NONE"/>
                        <eviction strategy="LRU" max-entries="10000"/>
                        <expiration max-idle="100000"/>
                    </local-cache>
                    <invalidation-cache name="entity" mode="SYNC">
                        <transaction mode="NON_XA"/>
                        <eviction strategy="LRU" max-entries="10000"/>
                        <expiration max-idle="100000"/>
                    </invalidation-cache>
                    <replicated-cache name="timestamps" mode="ASYNC">
                        <transaction mode="NONE"/>
                        <eviction strategy="NONE"/>
                    </replicated-cache>
                </cache-container>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jaxrs:1.0"/>
            <subsystem xmlns="urn:jboss:domain:jca:1.1">
                <archive-validation enabled="true" fail-on-error="true" fail-on-warn="false"/>
                <bean-validation enabled="false"/>
                <default-workmanager>
                    <short-running-threads>
                        <core-threads count="50"/>
                        <queue-length count="50"/>
                        <max-threads count="50"/>
                        <keepalive-time time="10" unit="seconds"/>
                    </short-running-threads>
                    <long-running-threads>
                        <core-threads count="50"/>
                        <queue-length count="50"/>
                        <max-threads count="50"/>
                        <keepalive-time time="10" unit="seconds"/>
                    </long-running-threads>
                </default-workmanager>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jdr:1.0"/>
            <subsystem xmlns="urn:jboss:domain:jgroups:1.1" default-stack="udp">
                <stack name="udp">
                    <transport type="UDP" socket-binding="jgroups-udp" diagnostics-socket-binding="jgroups-diagnostics"/>
                    <protocol type="PING"/>
                    <protocol type="MERGE2"/>
                    <protocol type="FD_SOCK" socket-binding="jgroups-udp-fd"/>
                    <protocol type="FD"/>
                    <protocol type="VERIFY_SUSPECT"/>
                    <protocol type="BARRIER"/>
                    <protocol type="pbcast.NAKACK"/>
                    <protocol type="UNICAST2"/>
                    <protocol type="pbcast.STABLE"/>
                    <protocol type="pbcast.GMS"/>
                    <protocol type="UFC"/>
                    <protocol type="MFC"/>
                    <protocol type="FRAG2"/>
                </stack>
                <stack name="tcp">
                    <transport type="TCP" socket-binding="jgroups-tcp" diagnostics-socket-binding="jgroups-diagnostics"/>
                    <protocol type="MPING" socket-binding="jgroups-mping"/>
                    <protocol type="MERGE2"/>
                    <protocol type="FD_SOCK" socket-binding="jgroups-tcp-fd"/>
                    <protocol type="FD"/>
                    <protocol type="VERIFY_SUSPECT"/>
                    <protocol type="BARRIER"/>
                    <protocol type="pbcast.NAKACK"/>
                    <protocol type="UNICAST2"/>
                    <protocol type="pbcast.STABLE"/>
                    <protocol type="pbcast.GMS"/>
                    <protocol type="UFC"/>
                    <protocol type="MFC"/>
                    <protocol type="FRAG2"/>
                </stack>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jmx:1.1">
                <show-model value="true"/>
                <remoting-connector/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jpa:1.0">
                <jpa default-datasource=""/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:mail:1.0">
                <mail-session jndi-name="java:jboss/mail/Default">
                    <smtp-server outbound-socket-binding-ref="mail-smtp"/>
                </mail-session>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:modcluster:1.0">
                <mod-cluster-config advertise-socket="modcluster"/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:naming:1.1"/>
            <subsystem xmlns="urn:jboss:domain:osgi:1.2" activation="lazy">
                <properties>
                    <!-- Specifies the beginning start level of the framework -->
                    <property name="org.osgi.framework.startlevel.beginning">1</property>
                </properties>
                <capabilities>
                    <!-- modules registered with the OSGi layer on startup -->
                    <capability name="javax.servlet.api:v25"/>
                    <capability name="javax.transaction.api"/>
                    <!-- bundles started in startlevel 1 -->
                    <capability name="org.apache.felix.log" startlevel="1"/>
                    <capability name="org.jboss.osgi.logging" startlevel="1"/>
                    <capability name="org.apache.felix.configadmin" startlevel="1"/>
                    <capability name="org.jboss.as.osgi.configadmin" startlevel="1"/>
                </capabilities>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:pojo:1.0"/>
            <subsystem xmlns="urn:jboss:domain:remoting:1.1">
                <connector name="remoting-connector" socket-binding="remoting" security-realm="ApplicationRealm"/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:resource-adapters:1.0"/>
            <subsystem xmlns="urn:jboss:domain:sar:1.0"/>
            <subsystem xmlns="urn:jboss:domain:security:1.1">
                <security-domains>
                    <security-domain name="other" cache-type="default">
                        <authentication>
                            <login-module code="Remoting" flag="optional">
                                <module-option name="password-stacking" value="useFirstPass"/>
                            </login-module>
                            <login-module code="RealmUsersRoles" flag="required">
                                <module-option name="usersProperties" value="${jboss.domain.config.dir}/application-users.properties"/>
                                <module-option name="rolesProperties" value="${jboss.domain.config.dir}/application-roles.properties"/>
                                <module-option name="realm" value="ApplicationRealm"/>
                                <module-option name="password-stacking" value="useFirstPass"/>
                            </login-module>
                        </authentication>
                    </security-domain>
                    <security-domain name="jboss-web-policy" cache-type="default">
                        <authorization>
                            <policy-module code="Delegating" flag="required"/>
                        </authorization>
                    </security-domain>
                    <security-domain name="jboss-ejb-policy" cache-type="default">
                        <authorization>
                            <policy-module code="Delegating" flag="required"/>
                        </authorization>
                    </security-domain>
                </security-domains>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:threads:1.1"/>
            <subsystem xmlns="urn:jboss:domain:transactions:1.1">
                <core-environment>
                    <process-id>
                        <uuid/>
                    </process-id>
                </core-environment>
                <recovery-environment socket-binding="txn-recovery-environment" status-socket-binding="txn-status-manager"/>
                <coordinator-environment default-timeout="300"/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host" native="false">
                <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/>
                <virtual-server name="default-host" enable-welcome-root="true">
                    <alias name="localhost"/>
                    <alias name="example.com"/>
                </virtual-server>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:webservices:1.1">
                <modify-wsdl-address>true</modify-wsdl-address>
                <wsdl-host>${jboss.bind.address:127.0.0.1}</wsdl-host>
                <endpoint-config name="Standard-Endpoint-Config"/>
                <endpoint-config name="Recording-Endpoint-Config">
                    <pre-handler-chain name="recording-handlers" protocol-bindings="##SOAP11_HTTP ##SOAP11_HTTP_MTOM ##SOAP12_HTTP ##SOAP12_HTTP_MTOM">
                        <handler name="RecordingHandler" class="org.jboss.ws.common.invocation.RecordingServerHandler"/>
                    </pre-handler-chain>
                </endpoint-config>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:weld:1.0"/>
        </profile>

        <profile name="full">
            <subsystem xmlns="urn:jboss:domain:logging:1.1">
                <console-handler name="CONSOLE">
                    <level name="INFO"/>
                    <formatter>
                        <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
                    </formatter>
                </console-handler>
                <periodic-rotating-file-handler name="FILE">
                    <formatter>
                        <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
                    </formatter>
                    <file relative-to="jboss.server.log.dir" path="server.log"/>
                    <suffix value=".yyyy-MM-dd"/>
                    <append value="true"/>
                </periodic-rotating-file-handler>
                <logger category="com.arjuna">
                    <level name="WARN"/>
                </logger>
                <logger category="org.apache.tomcat.util.modeler">
                    <level name="WARN"/>
                </logger>
                <logger category="sun.rmi">
                    <level name="WARN"/>
                </logger>
                <logger category="jacorb">
                    <level name="WARN"/>
                </logger>
                <logger category="jacorb.config">
                    <level name="ERROR"/>
                </logger>
                <root-logger>
                    <level name="INFO"/>
                    <handlers>
                        <handler name="CONSOLE"/>
                        <handler name="FILE"/>
                    </handlers>
                </root-logger>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:cmp:1.0"/>
            <subsystem xmlns="urn:jboss:domain:configadmin:1.0"/>
            <subsystem xmlns="urn:jboss:domain:datasources:1.0">
                <datasources>
                    <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">
                        <connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1</connection-url>
                        <driver>h2</driver>
                        <security>
                            <user-name>sa</user-name>
                            <password>sa</password>
                        </security>
                    </datasource>
                    <drivers>
                        <driver name="h2" module="com.h2database.h2">
                            <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
                        </driver>
                    </drivers>
                </datasources>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:ee:1.0"/>
            <subsystem xmlns="urn:jboss:domain:ejb3:1.2">
                <session-bean>
                    <stateless>
                        <bean-instance-pool-ref pool-name="slsb-strict-max-pool"/>
                    </stateless>
                    <stateful default-access-timeout="5000" cache-ref="simple"/>
                    <singleton default-access-timeout="5000"/>
                </session-bean>
                <mdb>
                    <resource-adapter-ref resource-adapter-name="hornetq-ra"/>
                    <bean-instance-pool-ref pool-name="mdb-strict-max-pool"/>
                </mdb>
                <pools>
                    <bean-instance-pools>
                        <strict-max-pool name="slsb-strict-max-pool" max-pool-size="20" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>
                        <strict-max-pool name="mdb-strict-max-pool" max-pool-size="20" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>
                    </bean-instance-pools>
                </pools>
                <caches>
                    <cache name="simple" aliases="NoPassivationCache"/>
                    <cache name="passivating" passivation-store-ref="file" aliases="SimpleStatefulCache"/>
                </caches>
                <passivation-stores>
                    <file-passivation-store name="file"/>
                </passivation-stores>
                <async thread-pool-name="default"/>
                <timer-service thread-pool-name="default">
                    <data-store path="timer-service-data" relative-to="jboss.server.data.dir"/>
                </timer-service>
                <remote connector-ref="remoting-connector" thread-pool-name="default"/>
                <thread-pools>
                    <thread-pool name="default">
                        <max-threads count="10"/>
                        <keepalive-time time="100" unit="milliseconds"/>
                    </thread-pool>
                </thread-pools>
                <iiop enable-by-default="false" use-qualified-name="false"/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:infinispan:1.1" default-cache-container="hibernate">
                <cache-container name="hibernate" default-cache="local-query">
                    <local-cache name="entity">
                        <transaction mode="NON_XA"/>
                        <eviction strategy="LRU" max-entries="10000"/>
                        <expiration max-idle="100000"/>
                    </local-cache>
                    <local-cache name="local-query">
                        <transaction mode="NONE"/>
                        <eviction strategy="LRU" max-entries="10000"/>
                        <expiration max-idle="100000"/>
                    </local-cache>
                    <local-cache name="timestamps">
                        <transaction mode="NONE"/>
                        <eviction strategy="NONE"/>
                    </local-cache>
                </cache-container>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jacorb:1.1">
                <orb>
                    <initializers transactions="spec" security="on"/>
                </orb>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jaxr:1.0">
                <connection-factory jndi-name="java:jboss/jaxr/ConnectionFactory"/>
                <juddi-server publish-url="http://localhost:8080/juddi/publish" query-url="http://localhost:8080/juddi/query"/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jaxrs:1.0"/>
            <subsystem xmlns="urn:jboss:domain:jca:1.1">
                <archive-validation enabled="true" fail-on-error="true" fail-on-warn="false"/>
                <bean-validation enabled="true"/>
                <default-workmanager>
                    <short-running-threads>
                        <core-threads count="50"/>
                        <queue-length count="50"/>
                        <max-threads count="50"/>
                        <keepalive-time time="10" unit="seconds"/>
                    </short-running-threads>
                    <long-running-threads>
                        <core-threads count="50"/>
                        <queue-length count="50"/>
                        <max-threads count="50"/>
                        <keepalive-time time="10" unit="seconds"/>
                    </long-running-threads>
                </default-workmanager>
                <cached-connection-manager/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jdr:1.0"/>
            <subsystem xmlns="urn:jboss:domain:jmx:1.1">
                <show-model value="true"/>
                <remoting-connector/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jpa:1.0">
                <jpa default-datasource=""/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jsr77:1.0"/>
            <subsystem xmlns="urn:jboss:domain:mail:1.0">
                <mail-session jndi-name="java:jboss/mail/Default">
                    <smtp-server outbound-socket-binding-ref="mail-smtp"/>
                </mail-session>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:messaging:1.1">
                <hornetq-server>
                    <persistence-enabled>true</persistence-enabled>
                    <journal-file-size>102400</journal-file-size>
                    <journal-min-files>2</journal-min-files>

                    <connectors>
                        <netty-connector name="netty" socket-binding="messaging"/>
                        <netty-connector name="netty-throughput" socket-binding="messaging-throughput">
                            <param key="batch-delay" value="50"/>
                        </netty-connector>
                        <in-vm-connector name="in-vm" server-id="0"/>
                    </connectors>

                    <acceptors>
                        <netty-acceptor name="netty" socket-binding="messaging"/>
                        <netty-acceptor name="netty-throughput" socket-binding="messaging-throughput">
                            <param key="batch-delay" value="50"/>
                            <param key="direct-deliver" value="false"/>
                        </netty-acceptor>
                        <in-vm-acceptor name="in-vm" server-id="0"/>
                    </acceptors>

                    <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>

                    <address-settings>
                        <!--default for catch all-->
                        <address-setting match="#">
                            <dead-letter-address>jms.queue.DLQ</dead-letter-address>
                            <expiry-address>jms.queue.ExpiryQueue</expiry-address>
                            <redelivery-delay>0</redelivery-delay>
                            <max-size-bytes>10485760</max-size-bytes>
                            <address-full-policy>BLOCK</address-full-policy>
                            <message-counter-history-day-limit>10</message-counter-history-day-limit>
                        </address-setting>
                    </address-settings>

                    <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"/>
                                <entry name="java:jboss/exported/jms/RemoteConnectionFactory"/>
                            </entries>
                        </connection-factory>
                        <pooled-connection-factory name="hornetq-ra">
                            <transaction mode="xa"/>
                            <connectors>
                                <connector-ref connector-name="in-vm"/>
                            </connectors>
                            <entries>
                                <entry name="java:/JmsXA"/>
                            </entries>
                        </pooled-connection-factory>
                    </jms-connection-factories>

                    <jms-destinations>
                        <jms-queue name="testQueue">
                            <entry name="queue/test"/>
                            <entry name="java:jboss/exported/jms/queue/test"/>
                        </jms-queue>
                        <jms-topic name="testTopic">
                            <entry name="topic/test"/>
                            <entry name="java:jboss/exported/jms/topic/test"/>
                        </jms-topic>
                    </jms-destinations>
                </hornetq-server>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:naming:1.1"/>
            <subsystem xmlns="urn:jboss:domain:osgi:1.2" activation="lazy">
                <properties>
                    <!-- Specifies the beginning start level of the framework -->
                    <property name="org.osgi.framework.startlevel.beginning">1</property>
                </properties>
                <capabilities>
                    <!-- modules registered with the OSGi layer on startup -->
                    <capability name="javax.servlet.api:v25"/>
                    <capability name="javax.transaction.api"/>
                    <!-- bundles started in startlevel 1 -->
                    <capability name="org.apache.felix.log" startlevel="1"/>
                    <capability name="org.jboss.osgi.logging" startlevel="1"/>
                    <capability name="org.apache.felix.configadmin" startlevel="1"/>
                    <capability name="org.jboss.as.osgi.configadmin" startlevel="1"/>
                </capabilities>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:pojo:1.0"/>
            <subsystem xmlns="urn:jboss:domain:remoting:1.1">
                <connector name="remoting-connector" socket-binding="remoting" security-realm="ApplicationRealm"/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:resource-adapters:1.0"/>
            <subsystem xmlns="urn:jboss:domain:sar:1.0"/>
            <subsystem xmlns="urn:jboss:domain:security:1.1">
                <security-domains>
                    <security-domain name="other" cache-type="default">
                        <authentication>
                            <login-module code="Remoting" flag="optional">
                                <module-option name="password-stacking" value="useFirstPass"/>
                            </login-module>
                            <login-module code="RealmUsersRoles" flag="required">
                                <module-option name="usersProperties" value="${jboss.domain.config.dir}/application-users.properties"/>
                                <module-option name="rolesProperties" value="${jboss.domain.config.dir}/application-roles.properties"/>
                                <module-option name="realm" value="ApplicationRealm"/>
                                <module-option name="password-stacking" value="useFirstPass"/>
                            </login-module>
                        </authentication>
                    </security-domain>
                    <security-domain name="jboss-web-policy" cache-type="default">
                        <authorization>
                            <policy-module code="Delegating" flag="required"/>
                        </authorization>
                    </security-domain>
                    <security-domain name="jboss-ejb-policy" cache-type="default">
                        <authorization>
                            <policy-module code="Delegating" flag="required"/>
                        </authorization>
                    </security-domain>
                </security-domains>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:threads:1.1"/>
            <subsystem xmlns="urn:jboss:domain:transactions:1.1">
                <core-environment>
                    <process-id>
                        <uuid/>
                    </process-id>
                </core-environment>
                <recovery-environment socket-binding="txn-recovery-environment" status-socket-binding="txn-status-manager"/>
                <coordinator-environment default-timeout="300"/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host" native="false">
                <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/>
                <virtual-server name="default-host" enable-welcome-root="true">
                    <alias name="localhost"/>
                    <alias name="example.com"/>
                </virtual-server>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:webservices:1.1">
                <modify-wsdl-address>true</modify-wsdl-address>
                <wsdl-host>${jboss.bind.address:127.0.0.1}</wsdl-host>
                <endpoint-config name="Standard-Endpoint-Config"/>
                <endpoint-config name="Recording-Endpoint-Config">
                    <pre-handler-chain name="recording-handlers" protocol-bindings="##SOAP11_HTTP ##SOAP11_HTTP_MTOM ##SOAP12_HTTP ##SOAP12_HTTP_MTOM">
                        <handler name="RecordingHandler" class="org.jboss.ws.common.invocation.RecordingServerHandler"/>
                    </pre-handler-chain>
                </endpoint-config>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:weld:1.0"/>
        </profile>

        <profile name="full-ha">
            <subsystem xmlns="urn:jboss:domain:logging:1.1">
                <console-handler name="CONSOLE">
                    <level name="INFO"/>
                    <formatter>
                        <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
                    </formatter>
                </console-handler>
                <periodic-rotating-file-handler name="FILE">
                    <formatter>
                        <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
                    </formatter>
                    <file relative-to="jboss.server.log.dir" path="server.log"/>
                    <suffix value=".yyyy-MM-dd"/>
                    <append value="true"/>
                </periodic-rotating-file-handler>
                <logger category="com.arjuna">
                    <level name="WARN"/>
                </logger>
                <logger category="org.apache.tomcat.util.modeler">
                    <level name="WARN"/>
                </logger>
                <logger category="sun.rmi">
                    <level name="WARN"/>
                </logger>
                <logger category="jacorb">
                    <level name="WARN"/>
                </logger>
                <logger category="jacorb.config">
                    <level name="ERROR"/>
                </logger>
                <root-logger>
                    <level name="INFO"/>
                    <handlers>
                        <handler name="CONSOLE"/>
                        <handler name="FILE"/>
                    </handlers>
                </root-logger>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:configadmin:1.0"/>
            <subsystem xmlns="urn:jboss:domain:datasources:1.0">
                <datasources>
                    <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">
                        <connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1</connection-url>
                        <driver>h2</driver>
                        <security>
                            <user-name>sa</user-name>
                            <password>sa</password>
                        </security>
                    </datasource>
                    <drivers>
                        <driver name="h2" module="com.h2database.h2">
                            <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
                        </driver>
                    </drivers>
                </datasources>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:ee:1.0"/>
            <subsystem xmlns="urn:jboss:domain:ejb3:1.2">
                <session-bean>
                    <stateless>
                        <bean-instance-pool-ref pool-name="slsb-strict-max-pool"/>
                    </stateless>
                    <stateful default-access-timeout="5000" cache-ref="simple" clustered-cache-ref="clustered"/>
                    <singleton default-access-timeout="5000"/>
                </session-bean>
                <mdb>
                    <resource-adapter-ref resource-adapter-name="hornetq-ra"/>
                    <bean-instance-pool-ref pool-name="mdb-strict-max-pool"/>
                </mdb>
                <pools>
                    <bean-instance-pools>
                        <strict-max-pool name="slsb-strict-max-pool" max-pool-size="20" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>
                        <strict-max-pool name="mdb-strict-max-pool" max-pool-size="20" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>
                    </bean-instance-pools>
                </pools>
                <caches>
                    <cache name="simple" aliases="NoPassivationCache"/>
                    <cache name="passivating" passivation-store-ref="file" aliases="SimpleStatefulCache"/>
                    <cache name="clustered" passivation-store-ref="infinispan" aliases="StatefulTreeCache"/>
                </caches>
                <passivation-stores>
                    <file-passivation-store name="file"/>
                    <cluster-passivation-store name="infinispan" cache-container="ejb"/>
                </passivation-stores>
                <async thread-pool-name="default"/>
                <timer-service thread-pool-name="default">
                    <data-store path="timer-service-data" relative-to="jboss.server.data.dir"/>
                </timer-service>
                <remote connector-ref="remoting-connector" thread-pool-name="default"/>
                <thread-pools>
                    <thread-pool name="default">
                        <max-threads count="10"/>
                        <keepalive-time time="100" unit="milliseconds"/>
                    </thread-pool>
                </thread-pools>
                <iiop enable-by-default="false" use-qualified-name="false"/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:infinispan:1.1" default-cache-container="cluster">
                <cache-container name="cluster" aliases="ha-partition" default-cache="default">
                    <transport lock-timeout="60000"/>
                    <replicated-cache name="default" mode="SYNC" batching="true">
                        <locking isolation="REPEATABLE_READ"/>
                    </replicated-cache>
                </cache-container>
                <cache-container name="web" aliases="standard-session-cache" default-cache="repl">
                    <transport lock-timeout="60000"/>
                    <replicated-cache name="repl" mode="ASYNC" batching="true">
                        <file-store/>
                    </replicated-cache>
                    <replicated-cache name="sso" mode="SYNC" batching="true"/>
                    <distributed-cache name="dist" mode="ASYNC" batching="true">
                        <file-store/>
                    </distributed-cache>
                </cache-container>
                <cache-container name="ejb" aliases="sfsb sfsb-cache" default-cache="repl">
                    <transport lock-timeout="60000"/>
                    <replicated-cache name="repl" mode="ASYNC" batching="true">
                        <eviction strategy="LRU"/>
                        <file-store/>
                    </replicated-cache>
                    <!-- Clustered cache used internally by EJB subsytem for managing the client-mapping(s) of
                    the socketbinding referenced by the EJB remoting connector -->
                    <replicated-cache name="remote-connector-client-mappings" mode="SYNC" batching="true"/>
                    <distributed-cache name="dist" mode="ASYNC" batching="true">
                        <eviction strategy="LRU"/>
                        <file-store/>
                    </distributed-cache>
                </cache-container>
                <cache-container name="hibernate" default-cache="local-query">
                    <transport lock-timeout="60000"/>
                    <local-cache name="local-query">
                        <transaction mode="NONE"/>
                        <eviction strategy="LRU" max-entries="10000"/>
                        <expiration max-idle="100000"/>
                    </local-cache>
                    <invalidation-cache name="entity" mode="SYNC">
                        <transaction mode="NON_XA"/>
                        <eviction strategy="LRU" max-entries="10000"/>
                        <expiration max-idle="100000"/>
                    </invalidation-cache>
                    <replicated-cache name="timestamps" mode="ASYNC">
                        <transaction mode="NONE"/>
                        <eviction strategy="NONE"/>
                    </replicated-cache>
                </cache-container>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jacorb:1.1">
                <orb>
                    <initializers transactions="spec" security="on"/>
                </orb>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jaxr:1.0">
                <connection-factory jndi-name="java:jboss/jaxr/ConnectionFactory"/>
                <juddi-server publish-url="http://localhost:8080/juddi/publish" query-url="http://localhost:8080/juddi/query"/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jaxrs:1.0"/>
            <subsystem xmlns="urn:jboss:domain:jca:1.1">
                <archive-validation enabled="true" fail-on-error="true" fail-on-warn="false"/>
                <bean-validation enabled="true"/>
                <default-workmanager>
                    <short-running-threads>
                        <core-threads count="50"/>
                        <queue-length count="50"/>
                        <max-threads count="50"/>
                        <keepalive-time time="10" unit="seconds"/>
                    </short-running-threads>
                    <long-running-threads>
                        <core-threads count="50"/>
                        <queue-length count="50"/>
                        <max-threads count="50"/>
                        <keepalive-time time="10" unit="seconds"/>
                    </long-running-threads>
                </default-workmanager>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jdr:1.0"/>
            <subsystem xmlns="urn:jboss:domain:jgroups:1.1" default-stack="udp">
                <stack name="udp">
                    <transport type="UDP" socket-binding="jgroups-udp" diagnostics-socket-binding="jgroups-diagnostics"/>
                    <protocol type="PING"/>
                    <protocol type="MERGE2"/>
                    <protocol type="FD_SOCK" socket-binding="jgroups-udp-fd"/>
                    <protocol type="FD"/>
                    <protocol type="VERIFY_SUSPECT"/>
                    <protocol type="BARRIER"/>
                    <protocol type="pbcast.NAKACK"/>
                    <protocol type="UNICAST2"/>
                    <protocol type="pbcast.STABLE"/>
                    <protocol type="pbcast.GMS"/>
                    <protocol type="UFC"/>
                    <protocol type="MFC"/>
                    <protocol type="FRAG2"/>
                </stack>
                <stack name="tcp">
                    <transport type="TCP" socket-binding="jgroups-tcp" diagnostics-socket-binding="jgroups-diagnostics"/>
                    <protocol type="MPING" socket-binding="jgroups-mping"/>
                    <protocol type="MERGE2"/>
                    <protocol type="FD_SOCK" socket-binding="jgroups-tcp-fd"/>
                    <protocol type="FD"/>
                    <protocol type="VERIFY_SUSPECT"/>
                    <protocol type="BARRIER"/>
                    <protocol type="pbcast.NAKACK"/>
                    <protocol type="UNICAST2"/>
                    <protocol type="pbcast.STABLE"/>
                    <protocol type="pbcast.GMS"/>
                    <protocol type="UFC"/>
                    <protocol type="MFC"/>
                    <protocol type="FRAG2"/>
                </stack>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jmx:1.1">
                <show-model value="true"/>
                <remoting-connector/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jpa:1.0">
                <jpa default-datasource=""/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:jsr77:1.0"/>
            <subsystem xmlns="urn:jboss:domain:mail:1.0">
                <mail-session jndi-name="java:jboss/mail/Default">
                    <smtp-server outbound-socket-binding-ref="mail-smtp"/>
                </mail-session>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:messaging:1.1">
                <hornetq-server>
                    <persistence-enabled>true</persistence-enabled>
                    <journal-file-size>102400</journal-file-size>
                    <journal-min-files>2</journal-min-files>

                    <connectors>
                        <netty-connector name="netty" socket-binding="messaging"/>
                        <netty-connector name="netty-throughput" socket-binding="messaging-throughput">
                            <param key="batch-delay" value="50"/>
                        </netty-connector>
                        <in-vm-connector name="in-vm" server-id="0"/>
                    </connectors>

                    <acceptors>
                        <netty-acceptor name="netty" socket-binding="messaging"/>
                        <netty-acceptor name="netty-throughput" socket-binding="messaging-throughput">
                            <param key="batch-delay" value="50"/>
                            <param key="direct-deliver" value="false"/>
                        </netty-acceptor>
                        <in-vm-acceptor name="in-vm" server-id="0"/>
                    </acceptors>

                    <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>

                    <address-settings>
                        <!--default for catch all-->
                        <address-setting match="#">
                            <dead-letter-address>jms.queue.DLQ</dead-letter-address>
                            <expiry-address>jms.queue.ExpiryQueue</expiry-address>
                            <redelivery-delay>0</redelivery-delay>
                            <max-size-bytes>10485760</max-size-bytes>
                            <address-full-policy>BLOCK</address-full-policy>
                            <message-counter-history-day-limit>10</message-counter-history-day-limit>
                        </address-setting>
                    </address-settings>

                    <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"/>
                                <entry name="java:jboss/exported/jms/RemoteConnectionFactory"/>
                            </entries>
                        </connection-factory>
                        <pooled-connection-factory name="hornetq-ra">
                            <transaction mode="xa"/>
                            <connectors>
                                <connector-ref connector-name="in-vm"/>
                            </connectors>
                            <entries>
                                <entry name="java:/JmsXA"/>
                            </entries>
                        </pooled-connection-factory>
                    </jms-connection-factories>

                    <jms-destinations>
                        <jms-queue name="testQueue">
                            <entry name="queue/test"/>
                            <entry name="java:jboss/exported/jms/queue/test"/>
                        </jms-queue>
                        <jms-topic name="testTopic">
                            <entry name="topic/test"/>
                            <entry name="java:jboss/exported/jms/topic/test"/>
                        </jms-topic>
                    </jms-destinations>
                </hornetq-server>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:modcluster:1.0">
                <mod-cluster-config advertise-socket="modcluster"/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:naming:1.1"/>
            <subsystem xmlns="urn:jboss:domain:osgi:1.2" activation="lazy">
                <properties>
                    <!-- Specifies the beginning start level of the framework -->
                    <property name="org.osgi.framework.startlevel.beginning">1</property>
                </properties>
                <capabilities>
                    <!-- modules registered with the OSGi layer on startup -->
                    <capability name="javax.servlet.api:v25"/>
                    <capability name="javax.transaction.api"/>
                    <!-- bundles started in startlevel 1 -->
                    <capability name="org.apache.felix.log" startlevel="1"/>
                    <capability name="org.jboss.osgi.logging" startlevel="1"/>
                    <capability name="org.apache.felix.configadmin" startlevel="1"/>
                    <capability name="org.jboss.as.osgi.configadmin" startlevel="1"/>
                </capabilities>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:pojo:1.0"/>
            <subsystem xmlns="urn:jboss:domain:remoting:1.1">
                <connector name="remoting-connector" socket-binding="remoting" security-realm="ApplicationRealm"/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:resource-adapters:1.0"/>
            <subsystem xmlns="urn:jboss:domain:sar:1.0"/>
            <subsystem xmlns="urn:jboss:domain:security:1.1">
                <security-domains>
                    <security-domain name="other" cache-type="default">
                        <authentication>
                            <login-module code="Remoting" flag="optional">
                                <module-option name="password-stacking" value="useFirstPass"/>
                            </login-module>
                            <login-module code="RealmUsersRoles" flag="required">
                                <module-option name="usersProperties" value="${jboss.domain.config.dir}/application-users.properties"/>
                                <module-option name="rolesProperties" value="${jboss.domain.config.dir}/application-roles.properties"/>
                                <module-option name="realm" value="ApplicationRealm"/>
                                <module-option name="password-stacking" value="useFirstPass"/>
                            </login-module>
                        </authentication>
                    </security-domain>
                    <security-domain name="jboss-web-policy" cache-type="default">
                        <authorization>
                            <policy-module code="Delegating" flag="required"/>
                        </authorization>
                    </security-domain>
                    <security-domain name="jboss-ejb-policy" cache-type="default">
                        <authorization>
                            <policy-module code="Delegating" flag="required"/>
                        </authorization>
                    </security-domain>
                </security-domains>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:threads:1.1"/>
            <subsystem xmlns="urn:jboss:domain:transactions:1.1">
                <core-environment>
                    <process-id>
                        <uuid/>
                    </process-id>
                </core-environment>
                <recovery-environment socket-binding="txn-recovery-environment" status-socket-binding="txn-status-manager"/>
                <coordinator-environment default-timeout="300"/>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host" native="false">
                <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/>
                <virtual-server name="default-host" enable-welcome-root="true">
                    <alias name="localhost"/>
                    <alias name="example.com"/>
                </virtual-server>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:webservices:1.1">
                <modify-wsdl-address>true</modify-wsdl-address>
                <wsdl-host>${jboss.bind.address:127.0.0.1}</wsdl-host>
                <endpoint-config name="Standard-Endpoint-Config"/>
                <endpoint-config name="Recording-Endpoint-Config">
                    <pre-handler-chain name="recording-handlers" protocol-bindings="##SOAP11_HTTP ##SOAP11_HTTP_MTOM ##SOAP12_HTTP ##SOAP12_HTTP_MTOM">
                        <handler name="RecordingHandler" class="org.jboss.ws.common.invocation.RecordingServerHandler"/>
                    </pre-handler-chain>
                </endpoint-config>
            </subsystem>
            <subsystem xmlns="urn:jboss:domain:weld:1.0"/>
        </profile>
    </profiles>

    <!--
         Named interfaces that can be referenced elsewhere in the configuration. The configuration
         for how to associate these logical names with an actual network interface can either
         be specified here or can be declared on a per-host basis in the equivalent element in host.xml.

         These default configurations require the binding specification to be done in host.xml.
    -->
    <interfaces>
        <interface name="management"/>
        <interface name="public"/>
        <interface name="unsecure"/>
    </interfaces>

    <socket-binding-groups>
        <socket-binding-group name="standard-sockets" default-interface="public">
            <socket-binding name="http" port="8080"/>
            <socket-binding name="https" port="8443"/>
            <socket-binding name="jacorb" interface="unsecure" port="3528"/>
            <socket-binding name="jacorb-ssl" interface="unsecure" port="3529"/>
            <socket-binding name="messaging" port="5445"/>
            <socket-binding name="messaging-throughput" port="5455"/>
            <socket-binding name="osgi-http" interface="management" port="8090"/>
            <socket-binding name="remoting" port="4447"/>
            <socket-binding name="txn-recovery-environment" port="4712"/>
            <socket-binding name="txn-status-manager" port="4713"/>
            <outbound-socket-binding name="mail-smtp">
                <remote-destination host="localhost" port="25"/>
            </outbound-socket-binding>
        </socket-binding-group>
        <socket-binding-group name="ha-sockets" default-interface="public">
            <socket-binding name="http" port="8080"/>
            <socket-binding name="https" port="8443"/>
            <socket-binding name="jacorb" interface="unsecure" port="3528"/>
            <socket-binding name="jacorb-ssl" interface="unsecure" port="3529"/>
            <socket-binding name="jgroups-diagnostics" port="0" multicast-address="224.0.75.75" multicast-port="7500"/>
            <socket-binding name="jgroups-mping" port="0" multicast-address="${jboss.default.multicast.address:230.0.0.4}" multicast-port="45700"/>
            <socket-binding name="jgroups-tcp" port="7600"/>
            <socket-binding name="jgroups-tcp-fd" port="57600"/>
            <socket-binding name="jgroups-udp" port="55200" multicast-address="${jboss.default.multicast.address:230.0.0.4}" multicast-port="45688"/>
            <socket-binding name="jgroups-udp-fd" port="54200"/>
            <socket-binding name="messaging" port="5445"/>
            <socket-binding name="messaging-throughput" port="5455"/>
            <socket-binding name="modcluster" port="0" multicast-address="224.0.1.105" multicast-port="23364"/>
            <socket-binding name="osgi-http" interface="management" port="8090"/>
            <socket-binding name="remoting" port="4447"/>
            <socket-binding name="txn-recovery-environment" port="4712"/>
            <socket-binding name="txn-status-manager" port="4713"/>
            <outbound-socket-binding name="mail-smtp">
                <remote-destination host="localhost" port="25"/>
            </outbound-socket-binding>
        </socket-binding-group>
    </socket-binding-groups>

    <server-groups>
        <server-group name="main-server-group" profile="full">
            <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="full-ha">
            <jvm name="default">
                <heap size="64m" max-size="512m"/>
            </jvm>
            <socket-binding-group ref="ha-sockets"/>
        </server-group>
    </server-groups>

</domain>
