<?xml version='1.0' encoding='UTF-8'?> <server xmlns='urn:jboss:domain:1.4'>

<extensions>
    <extension module='org.jboss.as.clustering.infinispan'/>
    <extension module='org.jboss.as.clustering.jgroups'/>
    <extension module='org.jboss.as.connector'/>
    <extension module='org.jboss.as.deployment-scanner'/>
    <extension module='org.jboss.as.ee'/>
    <extension module='org.jboss.as.jmx'/>
    <extension module='org.jboss.as.logging'/>
    <extension module='org.jboss.as.messaging'/>
    <extension module='org.jboss.as.modcluster'/>
    <extension module='org.jboss.as.naming'/>
    <extension module='org.jboss.as.remoting'/>
    <extension module='org.jboss.as.security'/>
    <extension module='org.jboss.as.transactions'/>
    <extension module='org.jboss.as.web'/>
    <extension module='org.torquebox.bootstrap'/>
    <extension module='org.torquebox.core'/>
    <extension module='org.torquebox.jobs'/>
    <extension module='org.torquebox.messaging'/>
    <extension module='org.torquebox.security'/>
    <extension module='org.torquebox.services'/>
    <extension module='org.torquebox.stomp'/>
    <extension module='org.torquebox.web'/>
    <extension module='org.projectodd.polyglot.hasingleton'/>
    <extension module='org.projectodd.polyglot.cache'/>
    <extension module='org.projectodd.polyglot.stomp'/>
</extensions>
<system-properties>
    <property name='org.apache.tomcat.util.http.ServerCookie.FWD_SLASH_IS_SEPARATOR' value='false'/>
    <property name='org.apache.tomcat.util.net.WAIT_FOR_THREAD' value='false'/>
    <property name='org.quartz.scheduler.skipUpdateCheck' value='true'/>
    <property name='org.torquebox.slim_distro' value='true'/>
</system-properties>
<management>
    <security-realms>
        <security-realm name='ManagementRealm'>
            <authentication>
                <local default-user='$local'/>
                <properties path='mgmt-users.properties' relative-to='jboss.server.config.dir'/>
            </authentication>
        </security-realm>
        <security-realm name='ApplicationRealm'>
            <authentication>
                <local default-user='$local' allowed-users='*'/>
                <properties path='application-users.properties' relative-to='jboss.server.config.dir'/>
            </authentication>
            <authorization>
                <properties path='application-roles.properties' relative-to='jboss.server.config.dir'/>
            </authorization>
        </security-realm>
    </security-realms>
    <management-interfaces>
        <native-interface>
            <socket-binding native='management-native'/>
        </native-interface>
        <http-interface console-enabled='false'>
            <socket-binding http='management-http'/>
        </http-interface>
    </management-interfaces>
</management>
<profile>
    <subsystem xmlns='urn:jboss:domain:logging:1.2'>
        <console-handler name='CONSOLE'>
            <level name='INFO'/>
            <formatter>
                <pattern-formatter pattern='%K{level}%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n'/>
            </formatter>
        </console-handler>
        <periodic-rotating-file-handler name='FILE' autoflush='true'>
            <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='org.jboss.as.config'>
            <level name='DEBUG'/>
        </logger>
        <logger category='sun.rmi'>
            <level name='WARN'/>
        </logger>
        <root-logger>
            <level name='INFO'/>
            <handlers>
                <handler name='CONSOLE'/>
                <handler name='FILE'/>
            </handlers>
        </root-logger>
        <logger category='org.jboss.jca.adapters.jdbc.extensions.mysql'>
            <level name='ERROR'/>
        </logger>
    </subsystem>
    <subsystem xmlns='urn:jboss:domain:deployment-scanner:1.1'>
        <deployment-scanner path='deployments' relative-to='jboss.server.base.dir' scan-interval='5000' deployment-timeout='1200'/>
    </subsystem>
    <subsystem xmlns='urn:jboss:domain:ee:1.1'>
        <spec-descriptor-property-replacement>
            false
        </spec-descriptor-property-replacement>
        <jboss-descriptor-property-replacement>
            true
        </jboss-descriptor-property-replacement>
    </subsystem>
    <subsystem xmlns='urn:jboss:domain:infinispan:1.4'>
        <cache-container name='singleton' aliases='cluster 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='polyglot torquebox standard-session-cache' default-cache='repl' module='org.jboss.as.clustering.web.infinispan'>
            <transport lock-timeout='60000'/>
            <replicated-cache name='repl' mode='ASYNC' batching='true' start='EAGER'>
                <eviction strategy='LRU' max-entries='10000'/>
                <expiration max-idle='100000'/>
                <file-store passivation='false' purge='false'/>
            </replicated-cache>
            <replicated-cache name='sso' mode='SYNC' batching='true'/>
            <distributed-cache name='dist' mode='ASYNC' batching='true' l1-lifespan='0'>
                <eviction strategy='LRU' max-entries='10000'/>
                <expiration max-idle='100000'/>
                <file-store passivation='false' purge='false'/>
            </distributed-cache>
        </cache-container>
    </subsystem>
    <subsystem xmlns='urn:jboss:domain:jca:1.1'>
        <archive-validation enabled='false' fail-on-error='true' fail-on-warn='false'/>
        <bean-validation enabled='false'/>
        <default-workmanager>
            <short-running-threads>
                <core-threads count='1'/>
                <queue-length count='50'/>
                <max-threads count='50'/>
                <keepalive-time time='10' unit='seconds'/>
            </short-running-threads>
            <long-running-threads>
                <core-threads count='1'/>
                <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:jgroups:1.1' default-stack='udp'>
        <stack name='udp'>
            <transport type='UDP' socket-binding='jgroups-udp'/>
            <protocol type='PING'/>
            <protocol type='MERGE3'/>
            <protocol type='FD_SOCK' socket-binding='jgroups-udp-fd'/>
            <protocol type='FD'/>
            <protocol type='VERIFY_SUSPECT'/>
            <protocol type='pbcast.NAKACK2'/>
            <protocol type='UNICAST3'/>
            <protocol type='pbcast.STABLE'/>
            <protocol type='pbcast.GMS'/>
            <protocol type='UFC'/>
            <protocol type='MFC'/>
            <protocol type='FRAG2'/>
            <protocol type='RSVP'/>
        </stack>
        <stack name='tcp'>
            <transport type='TCP' socket-binding='jgroups-tcp'>
              <property name="max_bundle_size">32k</property>
            </transport>
            <protocol type='MPING' socket-binding='jgroups-mping'/>
            <protocol type='MERGE3'/>
            <protocol type='FD_SOCK' socket-binding='jgroups-tcp-fd'/>
            <protocol type='FD'/>
            <protocol type='VERIFY_SUSPECT'/>
            <protocol type='pbcast.NAKACK2'/>
            <protocol type='UNICAST3'/>
            <protocol type='pbcast.STABLE'/>
            <protocol type='pbcast.GMS'/>
            <protocol type='UFC'/>
            <protocol type='MFC'/>
            <protocol type='FRAG2'>
              <property name="frag_size">30k</property>
            </protocol>
            <protocol type='RSVP'/>
        </stack>
    </subsystem>
    <subsystem xmlns='urn:jboss:domain:jmx:1.2'>
        <expose-resolved-model/>
        <expose-expression-model/>
        <remoting-connector/>
    </subsystem>
    <subsystem xmlns='urn:jboss:domain:messaging:1.3'>
        <hornetq-server>
            <cluster-password>
                ${jboss.messaging.cluster.password:CHANGE ME!!}
            </cluster-password>
            <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>
            <broadcast-groups>
                <broadcast-group name='bg-group1'>
                    <jgroups-stack>${msg.jgroups.stack:udp}</jgroups-stack>
                    <jgroups-channel>${msg.jgroups.channel:hq-cluster}</jgroups-channel>
                    <broadcast-period>5000</broadcast-period>
                    <connector-ref>netty</connector-ref>
                </broadcast-group>
            </broadcast-groups>
            <discovery-groups>
                <discovery-group name='dg-group1'>
                    <jgroups-stack>${msg.jgroups.stack:udp}</jgroups-stack>
                    <jgroups-channel>${msg.jgroups.channel:hq-cluster}</jgroups-channel>
                    <refresh-timeout>10000</refresh-timeout>
                </discovery-group>
            </discovery-groups>
            <cluster-connections>
                <cluster-connection name='my-cluster'>
                    <address>
                        jms
                    </address>
                    <connector-ref>
                        netty
                    </connector-ref>
                    <discovery-group-ref discovery-group-name='dg-group1'/>
                    <retry-interval>500</retry-interval>
                    <retry-interval-multiplier>1.5</retry-interval-multiplier>
                    <max-retry-interval>4000</max-retry-interval>
                    <reconnect-attempts>8</reconnect-attempts>
                </cluster-connection>
            </cluster-connections>
            <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>
                    <redistribution-delay>
                        1000
                    </redistribution-delay>
                    <max-size-bytes>
                        20971520
                    </max-size-bytes>
                    <address-full-policy>
                        PAGE
                    </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>
                    <consumer-window-size>
                        1
                    </consumer-window-size>
                </connection-factory>
                <connection-factory name='RemoteConnectionFactory'>
                    <connectors>
                        <connector-ref connector-name='netty'/>
                    </connectors>
                    <entries>
                        <entry name='java:jboss/exported/jms/RemoteConnectionFactory'/>
                    </entries>
                    <consumer-window-size>
                        1
                    </consumer-window-size>
                </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>
            <jmx-management-enabled>
                true
            </jmx-management-enabled>
            <security-enabled>
                false
            </security-enabled>
        </hornetq-server>
    </subsystem>
    <subsystem xmlns='urn:jboss:domain:modcluster:1.1'>
        <mod-cluster-config advertise-socket='modcluster' connector='ajp' excluded-contexts='invoker,jbossws,juddi,console'>
            <dynamic-load-provider>
                <load-metric type='busyness'/>
            </dynamic-load-provider>
        </mod-cluster-config>
    </subsystem>
    <subsystem xmlns='urn:jboss:domain:naming:1.2'>
        <remote-naming/>
    </subsystem>
    <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:security:1.2'>
        <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='RealmDirect' flag='required'>
                        <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:transactions:1.2'>
        <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.4' default-virtual-server='default-host' native='false'>
        <connector name='http' protocol='HTTP/1.1' scheme='http' socket-binding='http'/>
        <connector name='ajp' protocol='AJP/1.3' scheme='http' socket-binding='ajp'/>
        <virtual-server name='default-host'>
            <alias name='localhost'/>
            <alias name='example.com'/>
        </virtual-server>
    </subsystem>
    <subsystem xmlns='urn:jboss:domain:torquebox-bootstrap:1.0'/>
    <subsystem xmlns='urn:jboss:domain:torquebox-core:1.0'/>
    <subsystem xmlns='urn:jboss:domain:torquebox-jobs:1.0'/>
    <subsystem xmlns='urn:jboss:domain:torquebox-messaging:1.0'/>
    <subsystem xmlns='urn:jboss:domain:torquebox-security:1.0'/>
    <subsystem xmlns='urn:jboss:domain:torquebox-services:1.0'/>
    <subsystem xmlns='urn:jboss:domain:torquebox-stomp:1.0'/>
    <subsystem xmlns='urn:jboss:domain:torquebox-web:1.0'/>
    <subsystem xmlns='urn:jboss:domain:polyglot-hasingleton:1.0'/>
    <subsystem xmlns='urn:jboss:domain:polyglot-cache:1.0'/>
    <subsystem xmlns='urn:jboss:domain:polyglot-stomp:1.0' socket-binding='stomp' secure-socket-binding='stomp-secure'/>
</profile>
<interfaces>
    <interface name='management'>
        <inet-address value='${jboss.bind.address.management:127.0.0.1}'/>
    </interface>
    <interface name='public'>
        <inet-address value='${jboss.bind.address:127.0.0.1}'/>
    </interface>
    <!-- TODO - only show this if the jacorb subsystem is added  -->
    <interface name='unsecure'>
        <!--
          ~  Used for IIOP sockets in the standard configuration.
          ~                  To secure JacORB you need to setup SSL 
          -->
        <inet-address value='${jboss.bind.address.unsecure:127.0.0.1}'/>
    </interface>
</interfaces>
<socket-binding-group name='standard-sockets' default-interface='public' port-offset='${jboss.socket.binding.port-offset:0}'>
    <socket-binding name='management-native' interface='management' port='${jboss.management.native.port:9999}'/>
    <socket-binding name='management-http' interface='management' port='${jboss.management.http.port:9990}'/>
    <socket-binding name='management-https' interface='management' port='${jboss.management.https.port:9443}'/>
    <socket-binding name='ajp' port='8009'/>
    <socket-binding name='http' port='${http.port:8080}'/>
    <socket-binding name='https' port='8443'/>
    <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-group' port='0' multicast-address='${jboss.messaging.group.address:231.7.7.7}' multicast-port='${jboss.messaging.group.port:9876}'/>
    <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='remoting' port='4447'/>
    <socket-binding name='txn-recovery-environment' port='4712'/>
    <socket-binding name='txn-status-manager' port='4713'/>
    <socket-binding name='stomp' port='8675'/>
    <socket-binding name='stomp-secure' port='8676'/>
</socket-binding-group>

</server>