http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/examples/javaee/mdb-remote-failover-static/server/standalone/configuration/standalone-backup.xml ---------------------------------------------------------------------- diff --git a/examples/javaee/mdb-remote-failover-static/server/standalone/configuration/standalone-backup.xml b/examples/javaee/mdb-remote-failover-static/server/standalone/configuration/standalone-backup.xml new file mode 100644 index 0000000..2045cee --- /dev/null +++ b/examples/javaee/mdb-remote-failover-static/server/standalone/configuration/standalone-backup.xml @@ -0,0 +1,511 @@ +<?xml version='1.0' encoding='UTF-8'?> + +<server xmlns="urn:jboss:domain:2.0"> + <extensions> + <extension module="org.jboss.as.clustering.infinispan"/> + <extension module="org.jboss.as.connector"/> + <extension module="org.jboss.as.deployment-scanner"/> + <extension module="org.jboss.as.ee"/> + <extension module="org.jboss.as.ejb3"/> + <extension module="org.jboss.as.jacorb"/> + <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.jsf"/> + <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.naming"/> + <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.webservices"/> + <extension module="org.jboss.as.weld"/> + <extension module="org.wildfly.extension.batch"/> + <extension module="org.wildfly.extension.io"/> + <extension module="org.wildfly.extension.undertow"/> + </extensions> + <management> + <security-realms> + <security-realm name="ManagementRealm"> + <authentication> + <local default-user="$local"/> + <properties path="mgmt-users.properties" relative-to="jboss.server.config.dir"/> + </authentication> + <authorization map-groups-to-roles="false"> + <properties path="mgmt-groups.properties" relative-to="jboss.server.config.dir"/> + </authorization> + </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> + <audit-log> + <formatters> + <json-formatter name="json-formatter"/> + </formatters> + <handlers> + <file-handler name="file" formatter="json-formatter" relative-to="jboss.server.data.dir" path="audit-log.log"/> + </handlers> + <logger log-boot="true" log-read-only="false" enabled="false"> + <handlers> + <handler name="file"/> + </handlers> + </logger> + </audit-log> + <management-interfaces> + <http-interface security-realm="ManagementRealm" http-upgrade-enabled="true"> + <socket-binding http="management-http"/> + </http-interface> + </management-interfaces> + <access-control provider="simple"> + <role-mapping> + <role name="SuperUser"> + <include> + <user name="$local"/> + </include> + </role> + </role-mapping> + </access-control> + </management> + <profile> + <subsystem xmlns="urn:jboss:domain:logging:2.0"> + <console-handler name="CONSOLE"> + <level name="INFO"/> + <formatter> + <named-formatter name="COLOR-PATTERN"/> + </formatter> + </console-handler> + <periodic-rotating-file-handler name="FILE" autoflush="true"> + <formatter> + <named-formatter name="PATTERN"/> + </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> + <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> + <formatter name="PATTERN"> + <pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/> + </formatter> + <formatter name="COLOR-PATTERN"> + <pattern-formatter pattern="%K{level}%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/> + </formatter> + </subsystem> + <subsystem xmlns="urn:jboss:domain:batch:1.0"> + <job-repository> + <in-memory/> + </job-repository> + <thread-pool> + <max-threads count="10"/> + <keepalive-time time="100" unit="milliseconds"/> + </thread-pool> + </subsystem> + <subsystem xmlns="urn:jboss:domain:datasources:2.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;DB_CLOSE_ON_EXIT=FALSE</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:deployment-scanner:2.0"> + <deployment-scanner path="deployments" relative-to="jboss.server.base.dir" scan-interval="5000" runtime-failure-causes-rollback="${jboss.deployment.scanner.rollback.on.failure:false}"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:ee:2.0"> + <spec-descriptor-property-replacement>false</spec-descriptor-property-replacement> + <jboss-descriptor-property-replacement>true</jboss-descriptor-property-replacement> + <annotation-property-replacement>false</annotation-property-replacement> + <concurrent> + <context-services> + <context-service name="default" jndi-name="java:jboss/ee/concurrency/context/default" use-transaction-setup-provider="true"/> + </context-services> + <managed-executor-services> + <managed-executor-service name="default" jndi-name="java:jboss/ee/concurrency/executor/default" context-service="default" hung-task-threshold="60000" core-threads="5" max-threads="25" keepalive-time="5000"/> + </managed-executor-services> + <managed-scheduled-executor-services> + <managed-scheduled-executor-service name="default" jndi-name="java:jboss/ee/concurrency/scheduler/default" context-service="default" hung-task-threshold="60000" core-threads="2" keepalive-time="3000"/> + </managed-scheduled-executor-services> + <managed-thread-factories> + <managed-thread-factory name="default" jndi-name="java:jboss/ee/concurrency/factory/default" context-service="default"/> + </managed-thread-factories> + </concurrent> + <default-bindings context-service="java:jboss/ee/concurrency/context/default" datasource="java:jboss/datasources/ExampleDS" jms-connection-factory="java:jboss/DefaultJMSConnectionFactory" managed-executor-service="java:jboss/ee/concurrency/executor/default" managed-scheduled-executor-service="java:jboss/ee/concurrency/scheduler/default" managed-thread-factory="java:jboss/ee/concurrency/factory/default"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:ejb3:2.0"> + <session-bean> + <stateful default-access-timeout="5000" cache-ref="simple" passivation-disabled-cache-ref="simple"/> + <singleton default-access-timeout="5000"/> + </session-bean> + <mdb> + <resource-adapter-ref resource-adapter-name="${ejb.resource-adapter-name:hornetq-ra.rar}"/> + <bean-instance-pool-ref pool-name="mdb-strict-max-pool"/> + </mdb> + <pools> + <bean-instance-pools> + <!-- A sample strict max pool configuration --> + <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"/> + <cache name="distributable" aliases="passivating clustered" passivation-store-ref="infinispan"/> + </caches> + <passivation-stores> + <passivation-store name="infinispan" cache-container="ejb" max-size="10000"/> + </passivation-stores> + <async thread-pool-name="default"/> + <timer-service thread-pool-name="default" default-data-store="default-file-store"> + <data-stores> + <file-data-store name="default-file-store" path="timer-service-data" relative-to="jboss.server.data.dir"/> + </data-stores> + </timer-service> + <remote connector-ref="http-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"/> + <default-security-domain value="other"/> + <default-missing-method-permissions-deny-access value="true"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:io:1.0"> + <worker name="default" io-threads="3"/> + <buffer-pool name="default" buffer-size="16384" buffers-per-slice="128"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:infinispan:2.0"> + <cache-container name="web" default-cache="passivation" module="org.wildfly.clustering.web.infinispan"> + <local-cache name="passivation" batching="true"> + <file-store passivation="true" purge="false"/> + </local-cache> + <local-cache name="persistent" batching="true"> + <file-store passivation="false" purge="false"/> + </local-cache> + </cache-container> + <cache-container name="ejb" aliases="sfsb" default-cache="passivation" module="org.wildfly.clustering.ejb.infinispan"> + <local-cache name="passivation" batching="true"> + <file-store passivation="true" purge="false"/> + </local-cache> + <local-cache name="persistent" batching="true"> + <file-store passivation="false" purge="false"/> + </local-cache> + </cache-container> + <cache-container name="hibernate" default-cache="local-query" module="org.hibernate"> + <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.3"> + <orb socket-binding="jacorb" ssl-socket-binding="jacorb-ssl"> + <initializers transactions="spec" security="identity"/> + </orb> + </subsystem> + <subsystem xmlns="urn:jboss:domain:jaxrs:1.0"/> + <subsystem xmlns="urn:jboss:domain:jca:2.0"> + <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.3"> + <expose-resolved-model/> + <expose-expression-model/> + <remoting-connector/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:jpa:1.1"> + <jpa default-datasource="" default-extended-persistence-inheritance="DEEP"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:jsf:1.0"/> + <subsystem xmlns="urn:jboss:domain:jsr77:1.0"/> + <subsystem xmlns="urn:jboss:domain:mail:2.0"> + <mail-session name="default" jndi-name="java:jboss/mail/Default"> + <smtp-server outbound-socket-binding-ref="mail-smtp"/> + </mail-session> + </subsystem> + <subsystem xmlns="urn:jboss:domain:messaging:2.0"> + <hornetq-server> + <backup>true</backup> + <shared-store>true</shared-store> + <persistence-enabled>true</persistence-enabled> + <journal-file-size>102400</journal-file-size> + <journal-min-files>2</journal-min-files> + <journal-directory path="../../../journal"/> + <bindings-directory path="../../../bindings"/> + <large-messages-directory path="../../../large-message"/> + <paging-directory path="../../../paging"/> + <connectors> + <http-connector name="http-connector" socket-binding="http"> + <param key="http-upgrade-endpoint" value="http-acceptor"/> + </http-connector> + <http-connector name="http-connector-throughput" socket-binding="http"> + <param key="http-upgrade-endpoint" value="http-acceptor-throughput"/> + <param key="batch-delay" value="50"/> + </http-connector> + <http-connector name="remote-http" socket-binding="remote-http"> + <param key="http-upgrade-endpoint" value="http-acceptor"/> + </http-connector> + <in-vm-connector name="in-vm" server-id="0"/> + </connectors> + <acceptors> + <http-acceptor name="http-acceptor" http-listener="default"/> + <http-acceptor name="http-acceptor-throughput" http-listener="default"> + <param key="batch-delay" value="50"/> + <param key="direct-deliver" value="false"/> + </http-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>PAGE</address-full-policy> + <page-size-bytes>2097152</page-size-bytes> + <message-counter-history-day-limit>10</message-counter-history-day-limit> + </address-setting> + </address-settings> + <cluster-connections> + <cluster-connection name="my-cluster"> + <address>jms</address> + <connector-ref>http-connector</connector-ref> + <static-connectors> + <connector-ref>remote-http</connector-ref> + </static-connectors> + </cluster-connection> + </cluster-connections> + <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="http-connector"/> + </connectors> + <entries> + <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"/> + <!-- Global JNDI entry used to provide a default JMS Connection factory to EE application --> + <entry name="java:jboss/DefaultJMSConnectionFactory"/> + </entries> + </pooled-connection-factory> + </jms-connection-factories> + <jms-destinations> + <jms-queue name="outQueue"> + <entry name="queue/outQueue"/> + <entry name="java:jboss/exported/queues/outQueue"/> + </jms-queue> + <jms-queue name="inQueue"> + <entry name="queue/inQueue"/> + <entry name="java:jboss/exported/queues/inQueue"/> + </jms-queue> + </jms-destinations> + </hornetq-server> + </subsystem> + <subsystem xmlns="urn:jboss:domain:naming:2.0"> + <remote-naming/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:pojo:1.0"/> + <subsystem xmlns="urn:jboss:domain:remoting:2.0"> + <endpoint worker="default"/> + <http-connector name="http-remoting-connector" connector-ref="default" security-realm="ApplicationRealm"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:resource-adapters:2.0"/> + <subsystem xmlns="urn:jboss:domain:sar: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:threads:1.1"/> + <subsystem xmlns="urn:jboss:domain:transactions:2.0"> + <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:undertow:1.0"> + <buffer-caches> + <buffer-cache name="default" buffer-size="1024" buffers-per-region="1024" max-regions="10"/> + </buffer-caches> + <server name="default-server"> + <http-listener name="default" socket-binding="http"/> + <host name="default-host" alias="localhost"> + <location name="/" handler="welcome-content"/> + <filter-ref name="server-header"/> + <filter-ref name="x-powered-by-header"/> + </host> + </server> + <servlet-container name="default" default-buffer-cache="default" stack-trace-on-error="local-only"> + <jsp-config/> + </servlet-container> + <handlers> + <file name="welcome-content" path="${jboss.home.dir}/welcome-content" directory-listing="true"/> + </handlers> + <filters> + <response-header name="server-header" header-name="Server" header-value="Wildfly 8"/> + <response-header name="x-powered-by-header" header-name="X-Powered-By" header-value="Undertow 1"/> + </filters> + </subsystem> + <subsystem xmlns="urn:jboss:domain:webservices:1.2"> + <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> + <client-config name="Standard-Client-Config"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:weld:2.0"/> + </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-http" interface="management" port="${jboss.management.http.port:9990}"/> + <socket-binding name="management-https" interface="management" port="${jboss.management.https.port:9993}"/> + <socket-binding name="ajp" port="${jboss.ajp.port:8009}"/> + <socket-binding name="http" port="${jboss.http.port:8080}"/> + <socket-binding name="https" port="${jboss.https.port:8443}"/> + <socket-binding name="jacorb" interface="unsecure" port="3528"/> + <socket-binding name="jacorb-ssl" interface="unsecure" port="3529"/> + <socket-binding name="remote-http" port="8180" fixed-port="true"/> + <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> +</server>
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/examples/javaee/mdb-remote-failover-static/server/standalone/configuration/standalone-example.xml ---------------------------------------------------------------------- diff --git a/examples/javaee/mdb-remote-failover-static/server/standalone/configuration/standalone-example.xml b/examples/javaee/mdb-remote-failover-static/server/standalone/configuration/standalone-example.xml new file mode 100644 index 0000000..49aa8f5 --- /dev/null +++ b/examples/javaee/mdb-remote-failover-static/server/standalone/configuration/standalone-example.xml @@ -0,0 +1,508 @@ +<?xml version='1.0' encoding='UTF-8'?> + +<server xmlns="urn:jboss:domain:2.0"> + <extensions> + <extension module="org.jboss.as.clustering.infinispan"/> + <extension module="org.jboss.as.connector"/> + <extension module="org.jboss.as.deployment-scanner"/> + <extension module="org.jboss.as.ee"/> + <extension module="org.jboss.as.ejb3"/> + <extension module="org.jboss.as.jacorb"/> + <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.jsf"/> + <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.naming"/> + <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.webservices"/> + <extension module="org.jboss.as.weld"/> + <extension module="org.wildfly.extension.batch"/> + <extension module="org.wildfly.extension.io"/> + <extension module="org.wildfly.extension.undertow"/> + </extensions> + <management> + <security-realms> + <security-realm name="ManagementRealm"> + <authentication> + <local default-user="$local"/> + <properties path="mgmt-users.properties" relative-to="jboss.server.config.dir"/> + </authentication> + <authorization map-groups-to-roles="false"> + <properties path="mgmt-groups.properties" relative-to="jboss.server.config.dir"/> + </authorization> + </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> + <audit-log> + <formatters> + <json-formatter name="json-formatter"/> + </formatters> + <handlers> + <file-handler name="file" formatter="json-formatter" relative-to="jboss.server.data.dir" path="audit-log.log"/> + </handlers> + <logger log-boot="true" log-read-only="false" enabled="false"> + <handlers> + <handler name="file"/> + </handlers> + </logger> + </audit-log> + <management-interfaces> + <http-interface security-realm="ManagementRealm" http-upgrade-enabled="true"> + <socket-binding http="management-http"/> + </http-interface> + </management-interfaces> + <access-control provider="simple"> + <role-mapping> + <role name="SuperUser"> + <include> + <user name="$local"/> + </include> + </role> + </role-mapping> + </access-control> + </management> + <profile> + <subsystem xmlns="urn:jboss:domain:logging:2.0"> + <console-handler name="CONSOLE"> + <level name="INFO"/> + <formatter> + <named-formatter name="COLOR-PATTERN"/> + </formatter> + </console-handler> + <periodic-rotating-file-handler name="FILE" autoflush="true"> + <formatter> + <named-formatter name="PATTERN"/> + </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> + <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> + <formatter name="PATTERN"> + <pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/> + </formatter> + <formatter name="COLOR-PATTERN"> + <pattern-formatter pattern="%K{level}%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/> + </formatter> + </subsystem> + <subsystem xmlns="urn:jboss:domain:batch:1.0"> + <job-repository> + <in-memory/> + </job-repository> + <thread-pool> + <max-threads count="10"/> + <keepalive-time time="100" unit="milliseconds"/> + </thread-pool> + </subsystem> + <subsystem xmlns="urn:jboss:domain:datasources:2.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;DB_CLOSE_ON_EXIT=FALSE</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:deployment-scanner:2.0"> + <deployment-scanner path="deployments" relative-to="jboss.server.base.dir" scan-interval="5000" runtime-failure-causes-rollback="${jboss.deployment.scanner.rollback.on.failure:false}"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:ee:2.0"> + <spec-descriptor-property-replacement>false</spec-descriptor-property-replacement> + <jboss-descriptor-property-replacement>true</jboss-descriptor-property-replacement> + <annotation-property-replacement>false</annotation-property-replacement> + <concurrent> + <context-services> + <context-service name="default" jndi-name="java:jboss/ee/concurrency/context/default" use-transaction-setup-provider="true"/> + </context-services> + <managed-executor-services> + <managed-executor-service name="default" jndi-name="java:jboss/ee/concurrency/executor/default" context-service="default" hung-task-threshold="60000" core-threads="5" max-threads="25" keepalive-time="5000"/> + </managed-executor-services> + <managed-scheduled-executor-services> + <managed-scheduled-executor-service name="default" jndi-name="java:jboss/ee/concurrency/scheduler/default" context-service="default" hung-task-threshold="60000" core-threads="2" keepalive-time="3000"/> + </managed-scheduled-executor-services> + <managed-thread-factories> + <managed-thread-factory name="default" jndi-name="java:jboss/ee/concurrency/factory/default" context-service="default"/> + </managed-thread-factories> + </concurrent> + <default-bindings context-service="java:jboss/ee/concurrency/context/default" datasource="java:jboss/datasources/ExampleDS" jms-connection-factory="java:jboss/DefaultJMSConnectionFactory" managed-executor-service="java:jboss/ee/concurrency/executor/default" managed-scheduled-executor-service="java:jboss/ee/concurrency/scheduler/default" managed-thread-factory="java:jboss/ee/concurrency/factory/default"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:ejb3:2.0"> + <session-bean> + <stateful default-access-timeout="5000" cache-ref="simple" passivation-disabled-cache-ref="simple"/> + <singleton default-access-timeout="5000"/> + </session-bean> + <mdb> + <resource-adapter-ref resource-adapter-name="${ejb.resource-adapter-name:hornetq-ra.rar}"/> + <bean-instance-pool-ref pool-name="mdb-strict-max-pool"/> + </mdb> + <pools> + <bean-instance-pools> + <!-- A sample strict max pool configuration --> + <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"/> + <cache name="distributable" aliases="passivating clustered" passivation-store-ref="infinispan"/> + </caches> + <passivation-stores> + <passivation-store name="infinispan" cache-container="ejb" max-size="10000"/> + </passivation-stores> + <async thread-pool-name="default"/> + <timer-service thread-pool-name="default" default-data-store="default-file-store"> + <data-stores> + <file-data-store name="default-file-store" path="timer-service-data" relative-to="jboss.server.data.dir"/> + </data-stores> + </timer-service> + <remote connector-ref="http-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"/> + <default-security-domain value="other"/> + <default-missing-method-permissions-deny-access value="true"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:io:1.0"> + <worker name="default" io-threads="3"/> + <buffer-pool name="default" buffer-size="16384" buffers-per-slice="128"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:infinispan:2.0"> + <cache-container name="web" default-cache="passivation" module="org.wildfly.clustering.web.infinispan"> + <local-cache name="passivation" batching="true"> + <file-store passivation="true" purge="false"/> + </local-cache> + <local-cache name="persistent" batching="true"> + <file-store passivation="false" purge="false"/> + </local-cache> + </cache-container> + <cache-container name="ejb" aliases="sfsb" default-cache="passivation" module="org.wildfly.clustering.ejb.infinispan"> + <local-cache name="passivation" batching="true"> + <file-store passivation="true" purge="false"/> + </local-cache> + <local-cache name="persistent" batching="true"> + <file-store passivation="false" purge="false"/> + </local-cache> + </cache-container> + <cache-container name="hibernate" default-cache="local-query" module="org.hibernate"> + <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.3"> + <orb socket-binding="jacorb" ssl-socket-binding="jacorb-ssl"> + <initializers transactions="spec" security="identity"/> + </orb> + </subsystem> + <subsystem xmlns="urn:jboss:domain:jaxrs:1.0"/> + <subsystem xmlns="urn:jboss:domain:jca:2.0"> + <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.3"> + <expose-resolved-model/> + <expose-expression-model/> + <remoting-connector/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:jpa:1.1"> + <jpa default-datasource="" default-extended-persistence-inheritance="DEEP"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:jsf:1.0"/> + <subsystem xmlns="urn:jboss:domain:jsr77:1.0"/> + <subsystem xmlns="urn:jboss:domain:mail:2.0"> + <mail-session name="default" jndi-name="java:jboss/mail/Default"> + <smtp-server outbound-socket-binding-ref="mail-smtp"/> + </mail-session> + </subsystem> + <subsystem xmlns="urn:jboss:domain:messaging:2.0"> + <hornetq-server> + <persistence-enabled>true</persistence-enabled> + <journal-file-size>102400</journal-file-size> + <journal-min-files>2</journal-min-files> + <journal-directory path="../../../journal2"/> + <bindings-directory path="../../../bindings2"/> + <large-messages-directory path="../../../large-message2"/> + <paging-directory path="../../../paging2"/> + <connectors> + <http-connector name="http-connector" socket-binding="http"> + <param key="http-upgrade-endpoint" value="http-acceptor"/> + </http-connector> + <http-connector name="remote-http" socket-binding="remote-http"> + <param key="http-upgrade-endpoint" value="http-acceptor"/> + </http-connector> + <http-connector name="remote-http-backup" socket-binding="remote-http-backup"> + <param key="http-upgrade-endpoint" value="http-acceptor"/> + </http-connector> + <http-connector name="http-connector-throughput" socket-binding="http"> + <param key="http-upgrade-endpoint" value="http-acceptor-throughput"/> + <param key="batch-delay" value="50"/> + </http-connector> + <in-vm-connector name="in-vm" server-id="0"/> + </connectors> + <acceptors> + <http-acceptor name="http-acceptor" http-listener="default"/> + <http-acceptor name="http-acceptor-throughput" http-listener="default"> + <param key="batch-delay" value="50"/> + <param key="direct-deliver" value="false"/> + </http-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>PAGE</address-full-policy> + <page-size-bytes>2097152</page-size-bytes> + <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="http-connector"/> + </connectors> + <entries> + <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"/> + <!-- Global JNDI entry used to provide a default JMS Connection factory to EE application --> + <entry name="java:jboss/DefaultJMSConnectionFactory"/> + </entries> + </pooled-connection-factory> + <pooled-connection-factory name="hornetq-remote-ra"> + <transaction mode="xa"/> + <user>guest</user> + <password>password</password> + <ha>true</ha> + <reconnect-attempts>-1</reconnect-attempts> + <connectors> + <connector-ref connector-name="remote-http"/> + <connector-ref connector-name="remote-http-backup"/> + </connectors> + <entries> + <entry name="java:/RemoteJmsXA"/> + </entries> + </pooled-connection-factory> + </jms-connection-factories> + </hornetq-server> + </subsystem> + <subsystem xmlns="urn:jboss:domain:naming:2.0"> + <remote-naming/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:pojo:1.0"/> + <subsystem xmlns="urn:jboss:domain:remoting:2.0"> + <endpoint worker="default"/> + <http-connector name="http-remoting-connector" connector-ref="default" security-realm="ApplicationRealm"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:resource-adapters:2.0"/> + <subsystem xmlns="urn:jboss:domain:sar: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:threads:1.1"/> + <subsystem xmlns="urn:jboss:domain:transactions:2.0"> + <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:undertow:1.0"> + <buffer-caches> + <buffer-cache name="default" buffer-size="1024" buffers-per-region="1024" max-regions="10"/> + </buffer-caches> + <server name="default-server"> + <http-listener name="default" socket-binding="http"/> + <host name="default-host" alias="localhost"> + <location name="/" handler="welcome-content"/> + <filter-ref name="server-header"/> + <filter-ref name="x-powered-by-header"/> + </host> + </server> + <servlet-container name="default" default-buffer-cache="default" stack-trace-on-error="local-only"> + <jsp-config/> + </servlet-container> + <handlers> + <file name="welcome-content" path="${jboss.home.dir}/welcome-content" directory-listing="true"/> + </handlers> + <filters> + <response-header name="server-header" header-name="Server" header-value="Wildfly 8"/> + <response-header name="x-powered-by-header" header-name="X-Powered-By" header-value="Undertow 1"/> + </filters> + </subsystem> + <subsystem xmlns="urn:jboss:domain:webservices:1.2"> + <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> + <client-config name="Standard-Client-Config"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:weld:2.0"/> + </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-http" interface="management" port="${jboss.management.http.port:9990}"/> + <socket-binding name="management-https" interface="management" port="${jboss.management.https.port:9993}"/> + <socket-binding name="ajp" port="${jboss.ajp.port:8009}"/> + <socket-binding name="http" port="${jboss.http.port:8080}"/> + <socket-binding name="https" port="${jboss.https.port:8443}"/> + <socket-binding name="jacorb" interface="unsecure" port="3528"/> + <socket-binding name="jacorb-ssl" interface="unsecure" port="3529"/> + <socket-binding name="remote-http" port="8180" fixed-port="true"/> + <socket-binding name="remote-http-backup" port="8280" fixed-port="true"/> + <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> +</server> http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/examples/javaee/mdb-remote-failover-static/server/standalone/configuration/standalone-live.xml ---------------------------------------------------------------------- diff --git a/examples/javaee/mdb-remote-failover-static/server/standalone/configuration/standalone-live.xml b/examples/javaee/mdb-remote-failover-static/server/standalone/configuration/standalone-live.xml new file mode 100644 index 0000000..bd25813 --- /dev/null +++ b/examples/javaee/mdb-remote-failover-static/server/standalone/configuration/standalone-live.xml @@ -0,0 +1,513 @@ +<?xml version='1.0' encoding='UTF-8'?> + +<server xmlns="urn:jboss:domain:2.0"> + <extensions> + <extension module="org.jboss.as.clustering.infinispan"/> + <extension module="org.jboss.as.connector"/> + <extension module="org.jboss.as.deployment-scanner"/> + <extension module="org.jboss.as.ee"/> + <extension module="org.jboss.as.ejb3"/> + <extension module="org.jboss.as.jacorb"/> + <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.jsf"/> + <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.naming"/> + <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.webservices"/> + <extension module="org.jboss.as.weld"/> + <extension module="org.wildfly.extension.batch"/> + <extension module="org.wildfly.extension.io"/> + <extension module="org.wildfly.extension.undertow"/> + </extensions> + <management> + <security-realms> + <security-realm name="ManagementRealm"> + <authentication> + <local default-user="$local"/> + <properties path="mgmt-users.properties" relative-to="jboss.server.config.dir"/> + </authentication> + <authorization map-groups-to-roles="false"> + <properties path="mgmt-groups.properties" relative-to="jboss.server.config.dir"/> + </authorization> + </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> + <audit-log> + <formatters> + <json-formatter name="json-formatter"/> + </formatters> + <handlers> + <file-handler name="file" formatter="json-formatter" relative-to="jboss.server.data.dir" path="audit-log.log"/> + </handlers> + <logger log-boot="true" log-read-only="false" enabled="false"> + <handlers> + <handler name="file"/> + </handlers> + </logger> + </audit-log> + <management-interfaces> + <http-interface security-realm="ManagementRealm" http-upgrade-enabled="true"> + <socket-binding http="management-http"/> + </http-interface> + </management-interfaces> + <access-control provider="simple"> + <role-mapping> + <role name="SuperUser"> + <include> + <user name="$local"/> + </include> + </role> + </role-mapping> + </access-control> + </management> + <profile> + <subsystem xmlns="urn:jboss:domain:logging:2.0"> + <console-handler name="CONSOLE"> + <level name="INFO"/> + <formatter> + <named-formatter name="COLOR-PATTERN"/> + </formatter> + </console-handler> + <periodic-rotating-file-handler name="FILE" autoflush="true"> + <formatter> + <named-formatter name="PATTERN"/> + </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> + <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> + <formatter name="PATTERN"> + <pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/> + </formatter> + <formatter name="COLOR-PATTERN"> + <pattern-formatter pattern="%K{level}%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/> + </formatter> + </subsystem> + <subsystem xmlns="urn:jboss:domain:batch:1.0"> + <job-repository> + <in-memory/> + </job-repository> + <thread-pool> + <max-threads count="10"/> + <keepalive-time time="100" unit="milliseconds"/> + </thread-pool> + </subsystem> + <subsystem xmlns="urn:jboss:domain:datasources:2.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;DB_CLOSE_ON_EXIT=FALSE</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:deployment-scanner:2.0"> + <deployment-scanner path="deployments" relative-to="jboss.server.base.dir" scan-interval="5000" runtime-failure-causes-rollback="${jboss.deployment.scanner.rollback.on.failure:false}"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:ee:2.0"> + <spec-descriptor-property-replacement>false</spec-descriptor-property-replacement> + <jboss-descriptor-property-replacement>true</jboss-descriptor-property-replacement> + <annotation-property-replacement>false</annotation-property-replacement> + <concurrent> + <context-services> + <context-service name="default" jndi-name="java:jboss/ee/concurrency/context/default" use-transaction-setup-provider="true"/> + </context-services> + <managed-executor-services> + <managed-executor-service name="default" jndi-name="java:jboss/ee/concurrency/executor/default" context-service="default" hung-task-threshold="60000" core-threads="5" max-threads="25" keepalive-time="5000"/> + </managed-executor-services> + <managed-scheduled-executor-services> + <managed-scheduled-executor-service name="default" jndi-name="java:jboss/ee/concurrency/scheduler/default" context-service="default" hung-task-threshold="60000" core-threads="2" keepalive-time="3000"/> + </managed-scheduled-executor-services> + <managed-thread-factories> + <managed-thread-factory name="default" jndi-name="java:jboss/ee/concurrency/factory/default" context-service="default"/> + </managed-thread-factories> + </concurrent> + <default-bindings context-service="java:jboss/ee/concurrency/context/default" datasource="java:jboss/datasources/ExampleDS" jms-connection-factory="java:jboss/DefaultJMSConnectionFactory" managed-executor-service="java:jboss/ee/concurrency/executor/default" managed-scheduled-executor-service="java:jboss/ee/concurrency/scheduler/default" managed-thread-factory="java:jboss/ee/concurrency/factory/default"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:ejb3:2.0"> + <session-bean> + <stateful default-access-timeout="5000" cache-ref="simple" passivation-disabled-cache-ref="simple"/> + <singleton default-access-timeout="5000"/> + </session-bean> + <mdb> + <resource-adapter-ref resource-adapter-name="${ejb.resource-adapter-name:hornetq-ra.rar}"/> + <bean-instance-pool-ref pool-name="mdb-strict-max-pool"/> + </mdb> + <pools> + <bean-instance-pools> + <!-- A sample strict max pool configuration --> + <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"/> + <cache name="distributable" aliases="passivating clustered" passivation-store-ref="infinispan"/> + </caches> + <passivation-stores> + <passivation-store name="infinispan" cache-container="ejb" max-size="10000"/> + </passivation-stores> + <async thread-pool-name="default"/> + <timer-service thread-pool-name="default" default-data-store="default-file-store"> + <data-stores> + <file-data-store name="default-file-store" path="timer-service-data" relative-to="jboss.server.data.dir"/> + </data-stores> + </timer-service> + <remote connector-ref="http-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"/> + <default-security-domain value="other"/> + <default-missing-method-permissions-deny-access value="true"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:io:1.0"> + <worker name="default" io-threads="3"/> + <buffer-pool name="default" buffer-size="16384" buffers-per-slice="128"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:infinispan:2.0"> + <cache-container name="web" default-cache="passivation" module="org.wildfly.clustering.web.infinispan"> + <local-cache name="passivation" batching="true"> + <file-store passivation="true" purge="false"/> + </local-cache> + <local-cache name="persistent" batching="true"> + <file-store passivation="false" purge="false"/> + </local-cache> + </cache-container> + <cache-container name="ejb" aliases="sfsb" default-cache="passivation" module="org.wildfly.clustering.ejb.infinispan"> + <local-cache name="passivation" batching="true"> + <file-store passivation="true" purge="false"/> + </local-cache> + <local-cache name="persistent" batching="true"> + <file-store passivation="false" purge="false"/> + </local-cache> + </cache-container> + <cache-container name="hibernate" default-cache="local-query" module="org.hibernate"> + <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.3"> + <orb socket-binding="jacorb" ssl-socket-binding="jacorb-ssl"> + <initializers transactions="spec" security="identity"/> + </orb> + </subsystem> + <subsystem xmlns="urn:jboss:domain:jaxrs:1.0"/> + <subsystem xmlns="urn:jboss:domain:jca:2.0"> + <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.3"> + <expose-resolved-model/> + <expose-expression-model/> + <remoting-connector/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:jpa:1.1"> + <jpa default-datasource="" default-extended-persistence-inheritance="DEEP"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:jsf:1.0"/> + <subsystem xmlns="urn:jboss:domain:jsr77:1.0"/> + <subsystem xmlns="urn:jboss:domain:mail:2.0"> + <mail-session name="default" jndi-name="java:jboss/mail/Default"> + <smtp-server outbound-socket-binding-ref="mail-smtp"/> + </mail-session> + </subsystem> + <subsystem xmlns="urn:jboss:domain:messaging:2.0"> + <hornetq-server> + <failover-on-shutdown>true</failover-on-shutdown> + <shared-store>true</shared-store> + <persistence-enabled>true</persistence-enabled> + <journal-file-size>102400</journal-file-size> + <journal-min-files>2</journal-min-files> + <journal-directory path="../../../journal"/> + <bindings-directory path="../../../bindings"/> + <large-messages-directory path="../../../large-message"/> + <paging-directory path="../../../paging"/> + <connectors> + <http-connector name="http-connector" socket-binding="http"> + <param key="http-upgrade-endpoint" value="http-acceptor"/> + </http-connector> + <http-connector name="http-connector-throughput" socket-binding="http"> + <param key="http-upgrade-endpoint" value="http-acceptor-throughput"/> + <param key="batch-delay" value="50"/> + </http-connector> + <http-connector name="remote-http" socket-binding="remote-http"> + <param key="http-upgrade-endpoint" value="http-acceptor"/> + </http-connector> + <in-vm-connector name="in-vm" server-id="0"/> + </connectors> + <acceptors> + <http-acceptor name="http-acceptor" http-listener="default"/> + <http-acceptor name="http-acceptor-throughput" http-listener="default"> + <param key="batch-delay" value="50"/> + <param key="direct-deliver" value="false"/> + </http-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>PAGE</address-full-policy> + <page-size-bytes>2097152</page-size-bytes> + <message-counter-history-day-limit>10</message-counter-history-day-limit> + </address-setting> + </address-settings> + <cluster-connections> + <cluster-connection name="my-cluster"> + <address>jms</address> + <connector-ref>http-connector</connector-ref> + <static-connectors> + <connector-ref>remote-http</connector-ref> + </static-connectors> + </cluster-connection> + </cluster-connections> + <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="http-connector"/> + </connectors> + <entries> + <entry name="java:jboss/exported/jms/RemoteConnectionFactory"/> + </entries> + <ha>true</ha> + <reconnect-attempts>-1</reconnect-attempts> + </connection-factory> + <pooled-connection-factory name="hornetq-ra"> + <transaction mode="xa"/> + <connectors> + <connector-ref connector-name="in-vm"/> + </connectors> + <entries> + <entry name="java:/JmsXA"/> + <!-- Global JNDI entry used to provide a default JMS Connection factory to EE application --> + <entry name="java:jboss/DefaultJMSConnectionFactory"/> + </entries> + </pooled-connection-factory> + </jms-connection-factories> + <jms-destinations> + <jms-queue name="inQueue"> + <entry name="queue/inQueue"/> + <entry name="java:jboss/exported/queues/inQueue"/> + </jms-queue> + <jms-queue name="outQueue"> + <entry name="queue/outQueue"/> + <entry name="java:jboss/exported/queues/outQueue"/> + </jms-queue> + </jms-destinations> + </hornetq-server> + </subsystem> + <subsystem xmlns="urn:jboss:domain:naming:2.0"> + <remote-naming/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:pojo:1.0"/> + <subsystem xmlns="urn:jboss:domain:remoting:2.0"> + <endpoint worker="default"/> + <http-connector name="http-remoting-connector" connector-ref="default" security-realm="ApplicationRealm"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:resource-adapters:2.0"/> + <subsystem xmlns="urn:jboss:domain:sar: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:threads:1.1"/> + <subsystem xmlns="urn:jboss:domain:transactions:2.0"> + <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:undertow:1.0"> + <buffer-caches> + <buffer-cache name="default" buffer-size="1024" buffers-per-region="1024" max-regions="10"/> + </buffer-caches> + <server name="default-server"> + <http-listener name="default" socket-binding="http"/> + <host name="default-host" alias="localhost"> + <location name="/" handler="welcome-content"/> + <filter-ref name="server-header"/> + <filter-ref name="x-powered-by-header"/> + </host> + </server> + <servlet-container name="default" default-buffer-cache="default" stack-trace-on-error="local-only"> + <jsp-config/> + </servlet-container> + <handlers> + <file name="welcome-content" path="${jboss.home.dir}/welcome-content" directory-listing="true"/> + </handlers> + <filters> + <response-header name="server-header" header-name="Server" header-value="Wildfly 8"/> + <response-header name="x-powered-by-header" header-name="X-Powered-By" header-value="Undertow 1"/> + </filters> + </subsystem> + <subsystem xmlns="urn:jboss:domain:webservices:1.2"> + <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> + <client-config name="Standard-Client-Config"/> + </subsystem> + <subsystem xmlns="urn:jboss:domain:weld:2.0"/> + </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-http" interface="management" port="${jboss.management.http.port:9990}"/> + <socket-binding name="management-https" interface="management" port="${jboss.management.https.port:9993}"/> + <socket-binding name="ajp" port="${jboss.ajp.port:8009}"/> + <socket-binding name="http" port="${jboss.http.port:8080}"/> + <socket-binding name="https" port="${jboss.https.port:8443}"/> + <socket-binding name="jacorb" interface="unsecure" port="3528"/> + <socket-binding name="jacorb-ssl" interface="unsecure" port="3529"/> + <socket-binding name="remote-http" port="8280" fixed-port="true"/> + <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> +</server> http://git-wip-us.apache.org/repos/asf/activemq-6/blob/8ecd255f/examples/javaee/mdb-remote-failover-static/src/main/java/org/hornetq/javaee/example/MDBRemoteFailoverStaticClientExample.java ---------------------------------------------------------------------- diff --git a/examples/javaee/mdb-remote-failover-static/src/main/java/org/hornetq/javaee/example/MDBRemoteFailoverStaticClientExample.java b/examples/javaee/mdb-remote-failover-static/src/main/java/org/hornetq/javaee/example/MDBRemoteFailoverStaticClientExample.java new file mode 100644 index 0000000..5106dd7 --- /dev/null +++ b/examples/javaee/mdb-remote-failover-static/src/main/java/org/hornetq/javaee/example/MDBRemoteFailoverStaticClientExample.java @@ -0,0 +1,126 @@ +/* + * Copyright 2005-2014 Red Hat, Inc. + * Red Hat licenses this file to you under the Apache License, version + * 2.0 (the "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + * implied. See the License for the specific language governing + * permissions and limitations under the License. + */ +package org.hornetq.javaee.example; + +import org.hornetq.javaee.example.server.ServerKiller; + +import javax.jms.*; +import javax.naming.Context; +import javax.naming.InitialContext; +import javax.naming.NamingException; +import java.util.Properties; + +/** + * @author <a href="mailto:andy.tay...@jboss.com">Andy Taylor</a> + * @author Justin Bertram + */ +public class MDBRemoteFailoverStaticClientExample +{ + private static ServerKiller killer; + + public static void main(String[] args) throws Exception + { + Connection connection = null; + InitialContext initialContext = null; + try + { + //Step 1. Create an initial context to perform the JNDI lookup. + final Properties env = new Properties(); + + env.put(Context.URL_PKG_PREFIXES, "org.jboss.ejb.client.naming"); + + env.put(Context.INITIAL_CONTEXT_FACTORY, "org.jboss.naming.remote.client.InitialContextFactory"); + + env.put(Context.PROVIDER_URL, "http-remoting://localhost:8180"); + + env.put(Context.SECURITY_PRINCIPAL, "guest"); + + env.put(Context.SECURITY_CREDENTIALS, "password"); + + initialContext = new InitialContext(env); + + //Step 2. Perfom a lookup on the queue + Queue queue = (Queue) initialContext.lookup("/queues/inQueue"); + + //Step 3. Perform a lookup on the Connection Factory + ConnectionFactory cf = (ConnectionFactory) initialContext.lookup("jms/RemoteConnectionFactory"); + + //Step 4.Create a JMS Connection + connection = cf.createConnection("guest", "password"); + + //Step 5. Create a JMS Session + Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); + + //Step 6. Create a JMS Message Producer + MessageProducer producer = session.createProducer(queue); + + //Step 7. Create a Text Message + TextMessage message = session.createTextMessage("This is a text message"); + + System.out.println("Sent message: " + message.getText()); + + //Step 8. Send the Message + producer.send(message); + + //Step 15. We lookup the reply queue + queue = (Queue) initialContext.lookup("/queues/outQueue"); + + //Step 16. We create a JMS message consumer + MessageConsumer messageConsumer = session.createConsumer(queue); + + //Step 17. We start the connedction so we can receive messages + connection.start(); + + //Step 18. We receive the message and print it out + message = (TextMessage) messageConsumer.receive(5000); + + System.out.println("message.getText() = " + message.getText()); + + System.out.println("Killing Live Server"); + + killer.kill(); + + //Step 7. Create a Text Message + message = session.createTextMessage("This is another text message"); + + System.out.println("Sent message: " + message.getText()); + + //Step 8. Send the Message + producer.send(message); + + //Step 18. We receive the message and print it out + message = (TextMessage) messageConsumer.receive(5000); + + System.out.println("message.getText() = " + message.getText()); + + } + finally + { + //Step 19. Be sure to close our JMS resources! + if (initialContext != null) + { + initialContext.close(); + } + if(connection != null) + { + connection.close(); + } + } + } + + public static void setKiller(ServerKiller killer) + { + MDBRemoteFailoverStaticClientExample.killer = killer; + } + +}