1 Reply Latest reply on Aug 1, 2019 9:03 AM by randythomass

    Need help redirecting traffic in wildfly 11

    randallthomas

      Hey guys, I am not as well versed in this as I should probably be so I will apologize from the start.

      I need to redirect all "https" traffic coming in as follows:

      Lets say someone types in https://foo.com, I need it to redirect to https://foo.com/otmm.

      I am including the XML file being used for all the settings in the system, as far as I can tell. Thank you for your help with this......

      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

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

      <server xmlns="urn:jboss:domain:5.0">

          <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.ejb3"/>

              <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.modcluster"/>

              <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.transactions"/>

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

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

              <extension module="org.wildfly.extension.batch.jberet"/>

              <extension module="org.wildfly.extension.bean-validation"/>

              <extension module="org.wildfly.extension.clustering.singleton"/>

              <extension module="org.wildfly.extension.core-management"/>

              <extension module="org.wildfly.extension.elytron"/>

              <extension module="org.wildfly.extension.io"/>

              <extension module="org.wildfly.extension.messaging-activemq"/>

              <extension module="org.wildfly.extension.request-controller"/>

              <extension module="org.wildfly.extension.security.manager"/>

              <extension module="org.wildfly.extension.undertow"/>

              <extension module="org.wildfly.iiop-openjdk"/>

          </extensions>

          <system-properties>

              <property name="com.arjuna.ats.arjuna.allowMultipleLastResources" value="true"/>

              <property name="org.apache.coyote.http11.Http11Protocol.SERVER" value="OpenText Media Management"/>

          </system-properties>

          <paths>

              <path name="otmm-app-root" path="F:\MediaManagement"/>

              <path name="teams.home" path="F:\MediaManagement"/>

          </paths>

          <management>

              <security-realms>

                  <security-realm name="ManagementRealm">

                      <authentication>

                          <local default-user="$local" skip-group-loading="true"/>

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

                      <server-identities>

                          <ssl>

                              <keystore path="server.keystore" relative-to="jboss.server.config.dir" keystore-password="secret" alias="server" key-password="secret"/>

                          </ssl>

                      </server-identities>

                      <authentication>

                          <local default-user="$local" allowed-users="*" skip-group-loading="true"/>

                          <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" path="audit-log.log" relative-to="jboss.server.data.dir"/>

                  </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:3.0">

                  <console-handler name="CONSOLE">

                      <level name="INFO"/>

                      <formatter>

                          <named-formatter name="COLOR-PATTERN"/>

                      </formatter>

                  </console-handler>

                  <periodic-size-rotating-file-handler name="FILE" autoflush="true">

                      <formatter>

                          <named-formatter name="PATTERN"/>

                      </formatter>

                      <file relative-to="teams.home" path="logs/mediamanager-appserver.log"/>

                      <rotate-size value="50m"/>

                      <max-backup-index value="100"/>

                      <suffix value=".yyyy-MM-dd"/>

                      <append value="true"/>

                  </periodic-size-rotating-file-handler>

                  <logger category="stdout" use-parent-handlers="false">

                      <level name="INFO"/>

                      <handlers>

                          <handler name="FILE"/>

                          <handler name="CONSOLE"/>

                      </handlers>

                  </logger>

                  <logger category="com.arjuna">

                      <level name="WARN"/>

                  </logger>

                  <logger category="org.jboss.as">

                      <level name="INFO"/>

                  </logger>

                  <logger category="org.hibernate">

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

                  <logger category="com.artesia">

                      <level name="INFO"/>

                  </logger>

                  <logger category="com.opentext">

                      <level name="INFO"/>

                  </logger>

                  <logger category="com.artesiatech">

                      <level name="INFO"/>

                  </logger>

                  <logger category="ttsg_teams">

                      <level name="INFO"/>

                  </logger>

                  <logger category="org.apache.kafka.common.network.Selector">

                      <level name="ERROR"/>

                  </logger>

                  <logger category="org.apache.tika">

      <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="%t %d{yyyy-MM-dd HH:mm:ss,SSS} | %-5p %X{CLIENT_IP} | session=%-6X{SESSION_ID} | user=%-10X{USER_ID} | %c | %m%n"/>

                  </formatter>

                  <formatter name="COLOR-PATTERN">

                      <pattern-formatter pattern="%t %d{yyyy-MM-dd HH:mm:ss,SSS} | %-5p %X{CLIENT_IP} | session=%-6X{SESSION_ID} | user=%-10X{USER_ID} | %c | %m%n"/>

                  </formatter>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:batch-jberet:2.0">

                  <default-job-repository name="in-memory"/>

                  <default-thread-pool name="batch"/>

                  <job-repository name="in-memory">

                      <in-memory/>

                  </job-repository>

                  <thread-pool name="batch">

                      <max-threads count="10"/>

                      <keepalive-time time="30" unit="seconds"/>

                  </thread-pool>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:bean-validation:1.0"/>

              <subsystem xmlns="urn:jboss:domain:core-management:1.0"/>

              <subsystem xmlns="urn:jboss:domain:datasources:5.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>

                      <datasource jta="false" jndi-name="java:jboss/jdbc/artesiadb-no-tx" pool-name="ArtesiaJBossSequencePool" enabled="true" use-java-context="true">

                          <connection-url>jdbc:sqlserver://ccc0sd01:1433;ApplicationName=ArtesiaJBossSequencePool</connection-url>

                          <driver>mssqldriver</driver>

                          <new-connection-sql>select 1</new-connection-sql>

                          <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>

                          <pool>

                              <min-pool-size>10</min-pool-size>

                              <max-pool-size>50</max-pool-size>

                          </pool>

                          <security>

                              <security-domain>ArtesiaNoTxRealm</security-domain>

                          </security>

                          <validation>

                              <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mssql.MSSQLValidConnectionChecker"/>

                              <validate-on-match>true</validate-on-match>

                              <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mssql.MSSQLExceptionSorter"/>

                          </validation>

                      </datasource>

                      <datasource jta="false" jndi-name="java:jboss/jdbc/job-db-no-tx" pool-name="JobPool" enabled="true" use-java-context="true">

                          <connection-url>jdbc:sqlserver://ccc0sd01:1433;ApplicationName=JobPool</connection-url>

                          <driver>mssqldriver</driver>

                          <new-connection-sql>select 1</new-connection-sql>

                          <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>

                          <pool>

                              <min-pool-size>20</min-pool-size>

                              <max-pool-size>200</max-pool-size>

                          </pool>

                          <security>

                              <security-domain>JobNoTxRealm</security-domain>

                          </security>

                          <validation>

                              <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mssql.MSSQLValidConnectionChecker"/>

                              <validate-on-match>true</validate-on-match>

                              <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mssql.MSSQLExceptionSorter"/>

                          </validation>

                      </datasource>

                      <datasource jta="false" jndi-name="java:jboss/jdbc/scheduler-db-no-tx" pool-name="SchedulerNoTxPool" enabled="true" use-java-context="true">

                          <connection-url>jdbc:sqlserver://ccc0sd01:1433;ApplicationName=SchedulerNoTxPool</connection-url>

                          <driver>mssqldriver</driver>

                          <new-connection-sql>select 1</new-connection-sql>

                          <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>

                          <pool>

                              <min-pool-size>10</min-pool-size>

                              <max-pool-size>50</max-pool-size>

                          </pool>

                          <security>

                              <security-domain>SchedulerNoTxRealm</security-domain>

                          </security>

                          <validation>

                              <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mssql.MSSQLValidConnectionChecker"/>

                              <validate-on-match>true</validate-on-match>

                              <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mssql.MSSQLExceptionSorter"/>

                          </validation>

                      </datasource>

                      <datasource jndi-name="java:jboss/jdbc/teamsdb" pool-name="ArtesiaJBossSnapshotPool" enabled="true" use-java-context="true">

                          <connection-url>jdbc:sqlserver://ccc0sd01:1433;SendStringParametersAsUnicode=true;ApplicationName=ArtesiaJBossSnapshotPool</connection-url>

                          <driver>mssqldriver</driver>

                          <new-connection-sql>select 1</new-connection-sql>

                          <transaction-isolation>4096</transaction-isolation>

                          <pool>

                              <min-pool-size>2</min-pool-size>

                              <max-pool-size>40</max-pool-size>

                          </pool>

                          <security>

                              <security-domain>ArtesiaTxRealm</security-domain>

                          </security>

                          <validation>

                              <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mssql.MSSQLValidConnectionChecker"/>

                              <validate-on-match>true</validate-on-match>

                              <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mssql.MSSQLExceptionSorter"/>

                          </validation>

                      </datasource>

                      <datasource jndi-name="java:jboss/jdbc/CommonDS" pool-name="JobTxPool" enabled="true" use-java-context="true">

                          <connection-url>jdbc:sqlserver://ccc0sd01:1433;SendStringParametersAsUnicode=true;ApplicationName=JobTxPool</connection-url>

                          <driver>mssqldriver</driver>

                          <new-connection-sql>select 1</new-connection-sql>

                          <pool>

                              <min-pool-size>10</min-pool-size>

                              <max-pool-size>50</max-pool-size>

                          </pool>

                          <security>

                              <security-domain>CommonRealm</security-domain>

                          </security>

                          <validation>

                              <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mssql.MSSQLValidConnectionChecker"/>

                              <validate-on-match>true</validate-on-match>

                              <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mssql.MSSQLExceptionSorter"/>

                          </validation>

                      </datasource>

                      <datasource jndi-name="java:jboss/jdbc/HASingletonDS" pool-name="OTMMHASingletonPool" enabled="true" use-java-context="true">

                          <connection-url>jdbc:sqlserver://ccc0sd01:1433;SendStringParametersAsUnicode=true;ApplicationName=OTMMHASingletonPool</connection-url>

                          <driver>mssqldriver</driver>

                          <new-connection-sql>select 1</new-connection-sql>

                          <pool>

                              <min-pool-size>1</min-pool-size>

                              <max-pool-size>1</max-pool-size>

                          </pool>

                          <security>

                              <security-domain>HASingletonDSRealm</security-domain>

                          </security>

                          <validation>

                              <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mssql.MSSQLValidConnectionChecker"/>

                              <validate-on-match>true</validate-on-match>

                              <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mssql.MSSQLExceptionSorter"/>

                          </validation>

                      </datasource>

                      <drivers>

                          <driver name="h2" module="com.h2database.h2">

                              <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>

                          </driver>

                          <driver name="mssqldriver" module="otmm-mssql-driver">

                              <xa-datasource-class>com.microsoft.sqlserver.jdbc.SQLServerXADataSource</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" auto-deploy-zipped="true" auto-deploy-exploded="false" runtime-failure-causes-rollback="${jboss.deployment.scanner.rollback.on.failure:false}"/>

                  <deployment-scanner name="otmm-app-deployment" path="ear" relative-to="otmm-app-root" scan-enabled="true" scan-interval="5000" auto-deploy-zipped="true" auto-deploy-exploded="false"/>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:ee:4.0">

                  <ear-subdeployments-isolated>true</ear-subdeployments-isolated>

                  <spec-descriptor-property-replacement>false</spec-descriptor-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-thread-factories>

                          <managed-thread-factory name="default" jndi-name="java:jboss/ee/concurrency/factory/default" context-service="default"/>

                      </managed-thread-factories>

                      <managed-executor-services>

                          <managed-executor-service name="default" jndi-name="java:jboss/ee/concurrency/executor/default" context-service="default" hung-task-threshold="60000" 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" keepalive-time="3000"/>

                      </managed-scheduled-executor-services>

                  </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:5.0">

                  <session-bean>

                      <stateless>

                          <bean-instance-pool-ref pool-name="slsb-strict-max-pool"/>

                      </stateless>

                      <stateful default-access-timeout="5000" cache-ref="distributable" passivation-disabled-cache-ref="simple"/>

                      <singleton default-access-timeout="5000"/>

                  </session-bean>

                  <mdb>

                      <resource-adapter-ref resource-adapter-name="${ejb.resource-adapter-name:activemq-ra.rar}"/>

                      <bean-instance-pool-ref pool-name="mdb-strict-max-pool"/>

                  </mdb>

                  <pools>

                      <bean-instance-pools>

                          <strict-max-pool name="slsb-strict-max-pool" derive-size="from-worker-pools" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>

                          <strict-max-pool name="mdb-strict-max-pool" derive-size="from-cpu-count" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>

                      </bean-instance-pools>

                  </pools>

                  <caches>

                      <cache name="simple"/>

                      <cache name="distributable" passivation-store-ref="infinispan" aliases="passivating clustered"/>

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

                      <channel-creation-options>

                          <option name="READ_TIMEOUT" value="${prop.remoting-connector.read.timeout:20}" type="xnio"/>

                          <option name="MAX_OUTBOUND_MESSAGES" value="1234" type="remoting"/>

                      </channel-creation-options>

                  </remote>

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

                  <log-system-exceptions value="true"/>

              </subsystem>

              <subsystem xmlns="urn:wildfly:elytron:1.2" final-providers="combined-providers" disallowed-providers="OracleUcrypto">

                  <providers>

                      <aggregate-providers name="combined-providers">

                          <providers name="elytron"/>

                          <providers name="openssl"/>

                      </aggregate-providers>

                      <provider-loader name="elytron" module="org.wildfly.security.elytron"/>

                      <provider-loader name="openssl" module="org.wildfly.openssl"/>

                  </providers>

                  <audit-logging>

                      <file-audit-log name="local-audit" path="audit.log" relative-to="jboss.server.log.dir" format="JSON"/>

                  </audit-logging>

                  <security-domains>

                      <security-domain name="ApplicationDomain" default-realm="ApplicationRealm" permission-mapper="default-permission-mapper">

                          <realm name="ApplicationRealm" role-decoder="groups-to-roles"/>

                          <realm name="local"/>

                      </security-domain>

                      <security-domain name="ManagementDomain" default-realm="ManagementRealm" permission-mapper="default-permission-mapper">

                          <realm name="ManagementRealm" role-decoder="groups-to-roles"/>

                          <realm name="local" role-mapper="super-user-mapper"/>

                      </security-domain>

                  </security-domains>

                  <security-realms>

                      <identity-realm name="local" identity="$local"/>

                      <properties-realm name="ApplicationRealm">

                          <users-properties path="application-users.properties" relative-to="jboss.server.config.dir" digest-realm-name="ApplicationRealm"/>

                          <groups-properties path="application-roles.properties" relative-to="jboss.server.config.dir"/>

                      </properties-realm>

                      <properties-realm name="ManagementRealm">

                          <users-properties path="mgmt-users.properties" relative-to="jboss.server.config.dir" digest-realm-name="ManagementRealm"/>

                          <groups-properties path="mgmt-groups.properties" relative-to="jboss.server.config.dir"/>

                      </properties-realm>

                  </security-realms>

                  <mappers>

                      <simple-permission-mapper name="default-permission-mapper" mapping-mode="first">

                          <permission-mapping>

                              <principal name="anonymous"/>

                              <permission class-name="org.wildfly.extension.batch.jberet.deployment.BatchPermission" module="org.wildfly.extension.batch.jberet" target-name="*"/>

                              <permission class-name="org.wildfly.transaction.client.RemoteTransactionPermission" module="org.wildfly.transaction.client"/>

                              <permission class-name="org.jboss.ejb.client.RemoteEJBPermission" module="org.jboss.ejb-client"/>

                          </permission-mapping>

                          <permission-mapping match-all="true">

                              <permission class-name="org.wildfly.security.auth.permission.LoginPermission"/>

                              <permission class-name="org.wildfly.extension.batch.jberet.deployment.BatchPermission" module="org.wildfly.extension.batch.jberet" target-name="*"/>

                              <permission class-name="org.wildfly.transaction.client.RemoteTransactionPermission" module="org.wildfly.transaction.client"/>

                              <permission class-name="org.jboss.ejb.client.RemoteEJBPermission" module="org.jboss.ejb-client"/>

                          </permission-mapping>

                      </simple-permission-mapper>

                      <constant-realm-mapper name="local" realm-name="local"/>

                      <simple-role-decoder name="groups-to-roles" attribute="groups"/>

                      <constant-role-mapper name="super-user-mapper">

                          <role name="SuperUser"/>

                      </constant-role-mapper>

                  </mappers>

                  <http>

                      <http-authentication-factory name="management-http-authentication" http-server-mechanism-factory="global" security-domain="ManagementDomain">

                          <mechanism-configuration>

                              <mechanism mechanism-name="DIGEST">

                                  <mechanism-realm realm-name="ManagementRealm"/>

                              </mechanism>

                          </mechanism-configuration>

                      </http-authentication-factory>

                      <http-authentication-factory name="application-http-authentication" http-server-mechanism-factory="global" security-domain="ApplicationDomain">

                          <mechanism-configuration>

                              <mechanism mechanism-name="BASIC">

                                  <mechanism-realm realm-name="Application Realm"/>

                              </mechanism>

                              <mechanism mechanism-name="FORM"/>

                          </mechanism-configuration>

                      </http-authentication-factory>

                      <provider-http-server-mechanism-factory name="global"/>

                  </http>

                  <sasl>

                      <sasl-authentication-factory name="management-sasl-authentication" sasl-server-factory="configured" security-domain="ManagementDomain">

                          <mechanism-configuration>

                              <mechanism mechanism-name="JBOSS-LOCAL-USER" realm-mapper="local"/>

                              <mechanism mechanism-name="DIGEST-MD5">

                                  <mechanism-realm realm-name="ManagementRealm"/>

                              </mechanism>

                          </mechanism-configuration>

                      </sasl-authentication-factory>

                      <sasl-authentication-factory name="application-sasl-authentication" sasl-server-factory="configured" security-domain="ApplicationDomain">

                          <mechanism-configuration>

                              <mechanism mechanism-name="JBOSS-LOCAL-USER" realm-mapper="local"/>

                              <mechanism mechanism-name="DIGEST-MD5">

                                  <mechanism-realm realm-name="ApplicationRealm"/>

                              </mechanism>

                          </mechanism-configuration>

                      </sasl-authentication-factory>

                      <configurable-sasl-server-factory name="configured" sasl-server-factory="elytron">

                          <properties>

                              <property name="wildfly.sasl.local-user.default-user" value="$local"/>

                          </properties>

                      </configurable-sasl-server-factory>

                      <mechanism-provider-filtering-sasl-server-factory name="elytron" sasl-server-factory="global">

                          <filters>

                              <filter provider-name="WildFlyElytron"/>

                          </filters>

                      </mechanism-provider-filtering-sasl-server-factory>

                      <provider-sasl-server-factory name="global"/>

                  </sasl>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:io:2.0">

                  <worker name="default"/>

                  <buffer-pool name="default"/>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:infinispan:4.0">

                  <cache-container name="server" aliases="singleton cluster" default-cache="default" module="org.wildfly.clustering.server">

                      <transport lock-timeout="60000"/>

                      <replicated-cache name="default">

                          <transaction mode="BATCH"/>

                      </replicated-cache>

                  </cache-container>

                  <cache-container name="web" default-cache="dist" module="org.wildfly.clustering.web.infinispan">

                      <transport lock-timeout="60000"/>

                      <distributed-cache name="dist">

                          <locking isolation="REPEATABLE_READ"/>

                          <transaction mode="BATCH"/>

                          <file-store/>

                      </distributed-cache>

                  </cache-container>

                  <cache-container name="ejb" aliases="sfsb" default-cache="dist" module="org.wildfly.clustering.ejb.infinispan">

                      <transport lock-timeout="60000"/>

                      <distributed-cache name="dist">

                          <locking isolation="REPEATABLE_READ"/>

                          <transaction mode="BATCH"/>

                          <file-store/>

                      </distributed-cache>

                  </cache-container>

                  <cache-container name="hibernate" default-cache="local-query" module="org.hibernate.infinispan">

                      <transport lock-timeout="60000"/>

                      <local-cache name="local-query">

                          <eviction strategy="LRU" max-entries="10000"/>

                          <expiration max-idle="100000"/>

                      </local-cache>

                      <invalidation-cache name="entity">

                          <transaction mode="NON_XA"/>

                          <eviction strategy="LRU" max-entries="10000"/>

                          <expiration max-idle="100000"/>

                      </invalidation-cache>

                      <replicated-cache name="timestamps" mode="ASYNC"/>

                  </cache-container>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:iiop-openjdk:2.0">

                  <orb socket-binding="iiop"/>

                  <initializers security="identity" transactions="spec"/>

                  <security server-requires-ssl="false" client-requires-ssl="false"/>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:jca:5.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:jgroups:5.0">

                  <channels default="ee">

                      <channel name="ee" stack="udp" cluster="ejb"/>

                  </channels>

                  <stacks>

                      <stack name="udp">

                          <transport type="UDP" socket-binding="jgroups-udp"/>

                          <protocol type="PING"/>

                          <protocol type="MERGE3"/>

                          <protocol type="FD_SOCK"/>

                          <protocol type="FD_ALL"/>

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

                      </stack>

                      <stack name="tcp">

                          <transport type="TCP" socket-binding="jgroups-tcp"/>

                          <socket-protocol type="MPING" socket-binding="jgroups-mping"/>

                          <protocol type="MERGE3"/>

                          <protocol type="FD_SOCK"/>

                          <protocol type="FD_ALL"/>

                          <protocol type="VERIFY_SUSPECT"/>

                          <protocol type="pbcast.NAKACK2"/>

                          <protocol type="UNICAST3"/>

                          <protocol type="pbcast.STABLE"/>

                          <protocol type="pbcast.GMS"/>

                          <protocol type="MFC"/>

                          <protocol type="FRAG2"/>

                      </stack>

                  </stacks>

              </subsystem>

              <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="java:jboss/jdbc/teamsdb" 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:3.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-activemq:2.0">

                  <server name="default">

                      <security enabled="false"/>

                      <cluster password="${jboss.messaging.cluster.password:CHANGE ME!!}"/>

                      <journal sync-transactional="false" sync-non-transactional="false"/>

                      <security-setting name="#">

                          <role name="guest" send="true" consume="true" create-non-durable-queue="true" delete-non-durable-queue="true"/>

                      </security-setting>

                      <address-setting name="#" dead-letter-address="jms.queue.DLQ" expiry-address="jms.queue.ExpiryQueue" max-size-bytes="10485760" page-size-bytes="2097152" message-counter-history-day-limit="10" redistribution-delay="1000"/>

                      <address-setting name="jms.queue.EventNotificationBean" dead-letter-address="jms.queue.EventNotifyDLQ" redelivery-delay="300000" max-delivery-attempts="12"/>

                      <address-setting name="jms.queue.RestartJob" dead-letter-address="jms.queue.RestartJobDLQ" redelivery-delay="300000" max-delivery-attempts="12"/>

                      <address-setting name="jms.queue.RestartJobDLQ" redelivery-delay="18000000" max-delivery-attempts="10"/>

                      <address-setting name="jms.queue.AsyncImportProcessingQueue" max-delivery-attempts="1"/>

                      <address-setting name="jms.queue.MediaAnalysisResponseQueue" dead-letter-address="jms.queue.MediaAnalysisResponseDLQ" redelivery-delay="300000" max-delivery-attempts="10"/>

                      <address-setting name="AssetImportJobCompletionNotifyQueue" redelivery-delay="100000" max-delivery-attempts="2"/>

                      <http-connector name="http-connector" socket-binding="http" endpoint="http-acceptor"/>

                      <http-connector name="http-connector-throughput" socket-binding="http" endpoint="http-acceptor-throughput">

                          <param name="batch-delay" value="50"/>

                      </http-connector>

                      <in-vm-connector name="in-vm" server-id="0">

                          <param name="buffer-pooling" value="false"/>

                      </in-vm-connector>

                      <http-acceptor name="http-acceptor" http-listener="default"/>

                      <http-acceptor name="http-acceptor-throughput" http-listener="default">

                          <param name="batch-delay" value="50"/>

                          <param name="direct-deliver" value="false"/>

                      </http-acceptor>

                      <in-vm-acceptor name="in-vm" server-id="0">

                          <param name="buffer-pooling" value="false"/>

                      </in-vm-acceptor>

                      <broadcast-group name="bg-group1" jgroups-channel="activemq-cluster" connectors="http-connector"/>

                      <discovery-group name="dg-group1" jgroups-channel="activemq-cluster"/>

                      <cluster-connection name="otmm-cluster" address="jms.topic.Clustered" connector-name="http-connector" discovery-group="dg-group1"/>

                      <jms-queue name="ExpiryQueue" entries="java:global/jms/queue/ExpiryQueue"/>

                      <jms-queue name="DLQ" entries="java:global/jms/queue/DLQ"/>

                      <jms-queue name="EventNotifyDLQ" entries="java:global/jms/opentext/event-notify-DLQ"/>

                      <jms-queue name="ArtesiaAsyncExportContent" entries="java:global/jms/artesia/async-export-content"/>

                      <jms-queue name="TriggerFieldContent" entries="java:global/jms/artesia/trigger-field-content"/>

                      <jms-queue name="CleanupVideoStagingContent" entries="java:global/jms/artesia/cleanup-video-staging"/>

                      <jms-queue name="ArtesiaVideoProcess" entries="java:global/jms/artesia/video-process"/>

                      <jms-queue name="TEAMSlogoutTopic" entries="java:global/jms/TEAMS/logout"/>

                      <jms-queue name="TEAMSsecurityTopic" entries="java:global/jms/TEAMS/security"/>

                      <jms-queue name="ImportJobFileTransferQueue" entries="java:global/jms/artesia/ImportJobFileTransferQueue"/>

                      <jms-queue name="AsyncImportProcessingQueue" entries="java:global/jms/artesia/AsyncImportProcessingQueue"/>

                      <jms-queue name="EventNotificationBean" entries="java:global/jms/opentext/event-notify"/>

                      <jms-queue name="RecentAccessTrackingBean" entries="java:global/jms/opentext/recent-access-track"/>

                      <jms-queue name="BulkEditJobCreation" entries="java:global/jms/artesia/bulk-edit-job-creation"/>

                      <jms-queue name="BulkEdit" entries="java:global/jms/artesia/bulk-edit"/>

                      <jms-queue name="DeleteAssetContent" entries="java:global/jms/opentext/delete-asset-content"/>

                      <jms-queue name="MoveAssetContent" entries="java:global/jms/opentext/move-asset-content"/>

                      <jms-queue name="RestartJob" entries="java:global/jms/opentext/restart-job"/>

                      <jms-queue name="RestartJobDLQ" entries="java:global/jms/opentext/restart-job-DLQ"/>

                      <jms-queue name="ScheduledJobs" entries="java:global/jms/opentext/scheduled-jobs"/>

                      <jms-queue name="MediaAnalysisResponseQueue" entries="java:global/jms/analysis/media-response-queue"/>

                      <jms-queue name="MediaAnalysisResponseDLQ" entries="java:global/jms/analysis/media-response-DLQ"/>

                      <jms-queue name="AssetImportJobCompletionNotifyQueue" entries="java:global/jms/asset/manage-import-jobs-queue"/>

                      <jms-queue name="UsersRecentLoginBean" entries="java:global/jms/opentext/users-recent-login"/>

      <jms-topic name="ClusteredExportJobDelivery" entries="java:global/jms/artesia/ExportJobDelivery"/>

                      <jms-topic name="AsyncStageVideoContent" entries="java:global/jms/artesia/Async-stagevideo-content"/>

                      <jms-topic name="TEAMSwebTopic" entries="java:global/jms/TEAMS/web"/>

                      <jms-topic name="TEAMSeventsTopic" entries="java:global/jms/TEAMS/events java:jboss/exported/jms/TEAMS/events"/>

                      <jms-topic name="ArtesiaAPIEventsTopic" entries="java:global/jms/artesia/events-api java:jboss/exported/jms/artesia/events-api"/>

                      <jms-topic name="ClusteredTEAMScacheTopic" entries="java:global/jms/TEAMS/cache"/>

                      <jms-topic name="ClusteredTranscodeJobTopic" entries="java:global/jms/video/transcode-job-processor"/>

                      <jms-topic name="JobExecutorTopic" entries="java:global/jms/opentext/JobExecutor"/>

                      <jms-topic name="SubJobExecutorTopic" entries="java:global/jms/opentext/SubJobExecutor"/>

                      <jms-topic name="AfterSubJobTopic" entries="java:global/jms/opentext/AfterSubJob"/>

                      <jms-topic name="CLusteredCreateBatchJobTopic" entries="java:global/jms/opentext/CreateBatchJob"/>

                      <jms-topic name="CLusteredDeleteBatchJobTopic" entries="java:global/jms/opentext/DeleteBatchJob"/>

                      <jms-topic name="ClusteredTranscodeContentTransferTopic" entries="java:global/jms/video/transcode-content-transfer"/>

                      <jms-topic name="ClusteredMediaAnalysisJobTopic" entries="java:global/jms/analysis/media-job-processor"/>

                      <connection-factory name="InVmConnectionFactory" entries="java:jboss/jms/ConnectionFactory" connectors="in-vm"/>

                      <connection-factory name="RemoteConnectionFactory" entries="java:jboss/exported/jms/RemoteConnectionFactory" connectors="http-connector" ha="true" block-on-acknowledge="true" reconnect-attempts="-1"/>

                      <pooled-connection-factory name="activemq-ra" entries="java:jboss/jms/JmsXA java:jboss/DefaultJMSConnectionFactory" connectors="in-vm" transaction="xa"/>

                  </server>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:modcluster:3.0">

                  <mod-cluster-config advertise-socket="modcluster" connector="ajp">

                      <dynamic-load-provider>

                          <load-metric type="cpu"/>

                      </dynamic-load-provider>

                  </mod-cluster-config>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:naming:2.0">

                  <bindings>

                      <simple name="java:global/server/ArtesiaServerLock" value="false"/>

                  </bindings>

                  <remote-naming/>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:pojo:1.0"/>

              <subsystem xmlns="urn:jboss:domain:remoting:4.0">

                  <endpoint/>

                  <http-connector name="http-remoting-connector" connector-ref="default"/>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:resource-adapters:5.0"/>

              <subsystem xmlns="urn:jboss:domain:request-controller:1.0"/>

              <subsystem xmlns="urn:jboss:domain:sar:1.0"/>

              <subsystem xmlns="urn:jboss:domain:security-manager:1.0">

                  <deployment-permissions>

                      <maximum-set>

                          <permission class="java.security.AllPermission"/>

                      </maximum-set>

                  </deployment-permissions>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:security:2.0">

                  <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-domain name="jaspitest" cache-type="default">

                          <authentication-jaspi>

                              <login-module-stack name="dummy">

                                  <login-module code="Dummy" flag="optional"/>

                              </login-module-stack>

                              <auth-module code="Dummy"/>

                          </authentication-jaspi>

                      </security-domain>

                      <security-domain name="ArtesiaTxRealm" cache-type="default">

                          <authentication>

                              <login-module name="ArtesiaLoginModule" code="com.artesia.server.jaas.JBossDbLoginModule" flag="required" module="deploy"/>

                          </authentication>

                      </security-domain>

                      <security-domain name="ArtesiaNoTxRealm" cache-type="default">

                          <authentication>

                              <login-module name="ArtesiaLoginModule" code="com.artesia.server.jaas.JBossDbLoginModule" flag="required" module="deploy"/>

                          </authentication>

                      </security-domain>

                      <security-domain name="JobNoTxRealm" cache-type="default">

                          <authentication>

                              <login-module name="ArtesiaLoginModule" code="com.artesia.server.jaas.JBossDbLoginModule" flag="required" module="deploy"/>

                          </authentication>

                      </security-domain>

                      <security-domain name="CommonRealm" cache-type="default">

                          <authentication>

                              <login-module name="ArtesiaLoginModule" code="com.artesia.server.jaas.JBossDbLoginModule" flag="required" module="deploy"/>

                          </authentication>

                      </security-domain>

                      <security-domain name="SchedulerNoTxRealm" cache-type="default">

                          <authentication>

                              <login-module name="ArtesiaLoginModule" code="com.artesia.server.jaas.JBossDbLoginModule" flag="required" module="deploy"/>

                          </authentication>

                      </security-domain>

                      <security-domain name="HASingletonDSRealm" cache-type="default">

                          <authentication>

                              <login-module name="ArtesiaLoginModule" code="com.artesia.server.jaas.JBossDbLoginModule" flag="required" module="deploy"/>

                          </authentication>

                      </security-domain>

                  </security-domains>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:singleton:1.0">

                  <singleton-policies default="default">

                      <singleton-policy name="default" cache-container="server">

                          <simple-election-policy/>

                      </singleton-policy>

                  </singleton-policies>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:transactions:4.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="15400"/>

                  <object-store path="tx-object-store" relative-to="jboss.server.data.dir"/>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:undertow:4.0">

                  <buffer-cache name="default"/>

                  <server name="default-server">

                      <ajp-listener name="ajp" socket-binding="ajp" max-post-size="9223372036854775807"/>

                      <http-listener name="default" socket-binding="http" max-post-size="9223372036854775807" redirect-socket="https" enable-http2="true"/>

                      <https-listener name="https" socket-binding="https" max-post-size="9223372036854775807" security-realm="ApplicationRealm" enable-http2="true"/>

                      <host name="default-host" alias="localhost">

                          <http-invoker security-realm="ApplicationRealm"/>

                      </host>

                  </server>

                  <servlet-container name="default">

                      <jsp-config x-powered-by="false"/>

                      <websockets/>

                  </servlet-container>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:webservices:2.0">

                  <wsdl-host>jbossws.undefined.host</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:4.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>

              <interface name="private">

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

              </interface>

              <interface name="unsecure">

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

              </interface>

              <interface name="any">

                  <any-address/>

              </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:9443}"/>

              <socket-binding name="ajp" port="${jboss.ajp.port:1091}"/>

              <socket-binding name="http" port="${jboss.http.port:11090}"/>

              <socket-binding name="https" port="${jboss.https.port:443}"/>

              <socket-binding name="iiop" interface="unsecure" port="3528"/>

              <socket-binding name="iiop-ssl" interface="unsecure" port="3529"/>

              <socket-binding name="jgroups-mping" port="44512" multicast-address="${jboss.default.multicast.address:230.0.0.4}" multicast-port="45700"/>

              <socket-binding name="jgroups-tcp" port="7600"/>

              <socket-binding name="jgroups-udp" port="55200" multicast-address="${jboss.default.multicast.address:230.0.0.4}" multicast-port="45688"/>

              <socket-binding name="modcluster" port="44513" multicast-address="${artesia.jboss.modcluster.address:224.0.1.105}" multicast-port="23364"/>

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

      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~