How to Implement JBoss EAP 7.x in Managed Domain Mode in A Few Easy Steps
Tags: jboss, enterprisecontent, configurationmanagement
Published: 2023-03-23 05:31:21

JBoss EAP 7.x is a Java Enterprise 7-compliant middleware platform built on open standards, designed to improve startup speed and runtime performance. Its modular structure allows you to enable services only when needed, conserving system resources. The management console and command-line interface (CLI) offer an XML-free editing experience and the ability to script and automate tasks.
JBoss EAP comes in two operating modes: standalone server mode or managed domain mode. If you want to run JBoss EAP as a single server instance, then the standalone server mode is best suited for you. On the other hand, in the managed domain operating mode, you can manage multiple JBoss EAP instances from a consolidated control point.
In this article, we provide a step-by-step look into the implementation of JBoss EAP 7.x in the managed domain mode.
Note: The names and naming conventions used here are for demonstration purposes only, please change them as necessary.
 1. Software and Pre-Deployment Scenario
JBoss EAP 7.4.0
Operating System = RHEL8
RAM= 16GB 4 physical core 8vCpu
JDK Version = 1.8
2. Java Installation & JBoss Installation
For Red Hat Enterprise Linux 8, use the following command.
# subscription-manager repos --enable=jb-eap-EAP_MINOR_VERSION-for-rhel-RHEL_VERSION-ARCH-rpms
Install JBoss EAP and JDK 8 using the following command.
# yum groupinstall jboss-eap7
3. JBoss Domain Mode Heap Sizing
Go to the directory below for changing parameters.
Use the command cd /app01/wildfly/bin, edit domain.conf and change the following.
if [ "x$JAVA_OPTS" = "x" ]; then
JAVA_OPTS="-Xms2048m -Xmx2048m -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true" JAVA_OPTS="$JAVA_OPTS -Djboss.modules.system.pkgs=$JBOSS_MODULES_SYSTEM_PKGS -Djava.awt.headless=true"
4. JBoss EAP 7 Domain mode IP & PORT configuration.
We have change the IP & port in the cd /etc/opt/rh/eap7/wildfly/domain configuration file.
<interfaces>
<interface name="management"/>
<interface name="private">
<inet-address value="${jboss.bind.address.private:t24jbapp- dev.XXXXX.com.bh}"/>
</interface>
<interface name="public"/>
<interface name="unsecure">
<inet-address value="${jboss.bind.address.unsecure:t24jbapp- dev.XXXXX.com.bh}"/>
</interface>
</interfaces>
Host.xml
<interfaces>
<interface name="management">
<inet-address value="${jboss.bind.address.management:t24jbapp-dev.XXXXX.com.bh}"/>
</interface>
<interface name="public">
<inet-address value="${jboss.bind.address:t24jbapp-dev.XXXXX.com.bh}"/>
</interface>
</interfaces>
5. JBoss start command:
Go to the /bin directory of JBoss and create the following start script:
/app01/wildfly/bin./domain.sh
6. Creation of Management User:
JBoss EAP 7.x uses the standard EAP Management Realm configuration as its authentication source.
This means that adding users is a simple matter of using the existing EAP add-user script as follows
[root@pavan]# cd /JBOSS_HOME/bin/
[root@pavan bin ]# ./add-user.sh
What type of user do you wish to add?
a) Management User (mgmt-users.properties)
b) Application User (application-users.properties)
(a): a
Enter the details of the new user to add.
Using realm ' ManagementRealm ' as discovered from the existing property files.
Username : Jbossadm
About to add user 'admin' for realm 'ManagementRealm'
Is this correct yes/no? Yes
Password recommendations are listed below. To modify these restrictions edit the
add-user.properties configuration file.
- The password should be different from the username
- The password should not be one of the following restricted values
{root, admin, administrator}
- The password should contain at least 8 characters, 1 alphabetic character(s),
1 digit(s),
1 non-alphanumeric symbol(s)
Password : (e.g admin@123)
Re-enter Password : ( e .g. admin@123)
What groups do you want this user to belong to? (Please enter a comma separated
list, or leave blank for none)[ ]:
Is this new user going to be used for one AS process to connect to another AS process?
4_e.g. for a slave host controller connecting to the master or
for a Remoting connection for server to server EJB calls.
yes/no? Yes
To represent the user add the following to the server-identities
Definition < secret value="……………" />
7. Create Server Group & server in Domain mode.
Create server group with full High Availability.
Add servers to that server group:
No alt text provided for this image

8. Deploy the Application in Domain mode.
Deploy the application using the admin console.
First, go the deployment tab.
No alt text provided for this image
Then select the application.war in your local path.
No alt text provided for this image
Deploy the application.
No alt text provided for this image
9. Creation of resource-adapter for application connection in domain.xml.
Go to cd /etc/opt/rh/eap7/wildfly/domain in edit domain.xml
Go to profile=full-ha and add the following subsystem
<subsystem xmlns="urn:jboss:domain:resource-adapters:6.0">
<resource-adapters>
<resource-adapter id="tocfT24ra-ra.rar">
<archive>
tocfT24ra-ra.rar
</archive>
<transaction-support>XATransaction</transaction-support>
<config-property name="listenPort">0</config-property>
<config-property name="listenHost">0</config-property>
<connection-definitions>
<connection-definition class- name="com.temenos.tocf.t24ra.outbound.T24ManagedConnectionFactory" jndi-name="java:/jca/t24ConnectionFactoryTWS" pool-name="T24 TWS ConnectionFactory">
<config-property name="charset">ISO-8859-1</config-property>
<config-property name="actionTimeout">500</config-property>
<config-property name="compressionThreshold">2048</config-
property>
<config-property
name="envVariables">OFS_SOURCE=GCS</config-property>
<config-property name="hosts">10.1.90.13</config-property>
<config-property name="ports">9021</config-property>
<config-property name="compression">true</config-property>
<config-property name="loadBalancing">false</config-property>
<config-property name="allowInput">true</config-property>
</connection-definition>
</connection-definitions>
</resource-adapter>
</resource-adapters>
</subsystem>
10. Set port offset
   We can set port offset in a particular server as described below.
Go to cd /etc/opt/rh/eap7/wildfly/domain in edit domain.xml
Go to add below
Go to <socket- binding-group name=”full-ha-sockets
<socket-binding-group name="full-ha-sockets" default-interface="public">
<socket-binding name="ajp" port="${jboss.ajp.port:8009}"/>
<socket-binding name="http" port="${jboss.http.port:7000}"/>
Go to console–>runtime–>servergroup–>server then view and set the portoffset to 8
Go to console–>severgroups–>server–>upload the deployment war files
11. SSL Configuration
Go through the following steps for configuring the SSL certificate.
jbapps@sapjbbrw01 bin]$ ./jboss-cli.sh -c --controller=10.1.25.190:9990 [domain@10.1.25.190:9990 /] /host=master/subsystem=elytron/key-
store=httpsKS:add(path=XXXXX.jks,relative-to=jboss.domain.config.dir,credential-reference={clear- text=qwe333@@},type=JKS)
{"outcome" => "success"}
[domain@10.1.25.190:9990 /] /host=master/subsystem=elytron/key-manager=httpsKM:add(key- store=httpsKS,algorithm="SunX509",credential-reference={clear-text=qwe333@@})
{"outcome" => "success"} 
[domain@10.1.25.190:9990 /] /host=master/subsystem=elytron/server-ssl-context=httpsSSC:add(key- manager=httpsKM,protocols=["TLSv1.2"])
{"outcome" => "success"}<   
[domain@10.1.25.190:9990 /] /host=master/subsystem=elytron/server-ssl-context=httpsSSC:add(key- manager=httpsKM,protocols=["TLSv1.2"])
{"outcome" => "success"}   
[domain@10.1.25.190:9990 /] /host=master/core-service=management/management-interface=http- interface:write-attribute(name=ssl-context,value=httpsSSC)
{
"outcome" => "success", "result" => undefined,
"server-groups" => undefined,
"response-headers" => {"process-state" => "reload-required"}
}
[domain@10.1.25.190:9990 /] /host=master/core-service=management/management-interface=http- interface:write-attribute(name=secure-interface,value=management)
{
"outcome" => "success", "result" => undefined,
"server-groups" => undefined,
"response-headers" => {"process-state" => "reload-required"}
}
[domain@10.1.25.190:9990 /] /host=master/core-service=management/management-interface=http- interface:write-attribute(name=secure-port,value=8443)
{
"outcome" => "success", "result" => undefined,
"server-groups" => undefined,
"response-headers" => {"process-state" => "reload-required"}
}
[domain@10.1.25.190:9990 /] reload --host=master Unable to connect due to unrecognised server certificate
Subject - CN=*.XXXXX.com,O=XXXX.,L=XXX,C=XXX - CN=DigiCert TLS RSA SHA256 2020 CA1, O=DigiCert Inc, C=US
Valid From - …..
Valid To - …..
MD5 : ab:b7:3b:44:74:73:f2:59:c9:56:15:41:ca:8f:ff:95
SHA1 : 25:a7:c0:aa:1a:e3:4c:e4:c2:30:c2:28:46:a9:70:f2:5d:02:f7:06 
Subject - CN=DigiCert TLS RSA SHA256 2020 CA1,O=DigiCert Inc,C=US
Issuer - CN=DigiCert Global Root CA, OU=www.digicert.com, O=DigiCert Inc, C=US Valid From - ….
Valid To - ….
MD5 : e6:7b:58:6f:70:46:bf:e0:aa:51:f6:66:0b:11:9d:d9
SHA1 : 1c:58:a3:a8:51:8e:87:59:bf:07:5b:76:b7:50:d4:f2:df:26:4f:cd 
Subject - CN=DigiCert Global Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US Issuer - CN=DigiCert Global Root CA, OU=www.digicert.com, O=DigiCert Inc, C=US Valid From - Fri Nov 10 03:00:00 AST 2006
Valid To - Mon Nov 10 03:00:00 AST 2031
MD5 : 79:e4:a9:84:0d:7d:3a:96:d7:c0:4f:e2:43:4c:89:2e
SHA1 : a8:98:5d:3a:65:e5:e5:c4:b2:d7:d6:6d:40:c6:dd:2f:b1:9c:54:36 
Accept certificate? [N]o, [T]emporarily, [P]ermanently : P 
Server Level SSL
[domain@10.1.25.190:9990 /] /profile=full-ha/subsystem=elytron/key-
store=httpsKS:add(path=”/app01/wildfly/domain/configuration/XXXXX.jks”, credential-reference={clear- text=qwe333@@}, type=JKS)
[domain@10.1.25.190:9990 /] /profile=full-ha/subsystem=elytron/key-manager=httpsKM:add(key- store=httpsKS,algorithm="SunX509",credential-reference={clear-text=qwe333@@})
[domain@10.1.25.190:9990 /] /profile=full-ha/subsystem=elytron/server-ssl-context=httpsSSC:add(key- manager=httpsKM,protocols=["TLSv1.2"])
[domain@10.1.25.190:9990 /] reload --host=master
[domain@10.1.25.190:9990 /] batch
[domain@10.1.25.190:9990 /] /profile=full-ha/subsystem=undertow/server=default-server/https- listener=https:undefine-attribute(name=security-realm)
[domain@10.1.25.190:9990 /] /profile=full-ha/subsystem=undertow/server=default-server/https- listener=https:write-attribute(name=ssl-context,value=httpsSSC)
[domain@10.1.25.190:9990 /] run-batch


[jbapps@sapjbatm01 bin]$ ./jboss-cli.sh -c --controller=10.1.25.196:9990 [domain@10.1.25.196:9990 /] /host=master/subsystem=elytron/key- store=httpsKS:add(path=XXXXX.jks,relative-to=jboss.domain.config.dir,credential- reference={clear-text=qwe333@@},type=JKS)
{"outcome" => "success"}
[domain@10.1.25.196:9990 /] /host=master/subsystem=elytron/key-manager=httpsKM:add(key- store=httpsKS,algorithm="XXX",credential-reference={clear-text=qwe333@@})
{"outcome" => "success"}
[domain@10.1.25.196:9990 /] /host=master/subsystem=elytron/server-ssl-context=httpsSSC:add(key- manager=httpsKM,protocols=["TLSv1.2"])
{"outcome" => "success"}
[domain@10.1.25.196:9990 /] /host=master/core-service=management/management-interface=http- interface:write-attribute(name=ssl-context,value=httpsSSC)
{
"outcome" => "success", "result" => undefined,
"server-groups" => undefined,
"response-headers" => {"process-state" => "reload-required"}
}
[domain@10.1.25.196:9990 /] /host=master/core-service=management/management-interface=http- interface:write-attribute(name=secure-interface,value=management)
{
"outcome" => "success", "result" => undefined,
"server-groups" => undefined,
"response-headers" => {"process-state" => "reload-required"}
}
[domain@10.1.25.196:9990 /] /host=master/core-service=management/management-interface=http- interface:write-attribute(name=secure-port,value=8443)
{
"outcome" => "success", "result" => undefined,
"server-groups" => undefined,
"response-headers" => {"process-state" => "reload-required"}
}
[domain@10.1.25.196:9990 /] reload --host=master
Unable to connect due to unrecognised server certificate
Subject - CN=*.XXXXX.com,O=XXXXX,L=XXXXX,C=XXXXX - CN=DigiCert TLS RSA
SHA256 2020 CA1, O=DigiCert Inc, C=US
Valid From - Wed Oct 13 03:00:00 AST 2021
Valid To - Mon Nov 14 02:59:59 AST 2022
MD5 : ab:b7:3b:44:74:73:f2:59:c9:56:15:41:ca:8f:ff:95
SHA1 : 25:a7:c0:aa:1a:e3:4c:e4:c2:30:c2:28:46:a9:70:f2:5d:02:f7:06
Subject - CN=DigiCert TLS RSA SHA256 2020 CA1,O=DigiCert Inc,C=US
Issuer - CN=DigiCert Global Root CA, OU=www.digicert.com, O=DigiCert Inc, C=US
Valid From - Wed Apr 14 03:00:00 AST 2021
Valid To - Mon Apr 14 02:59:59 AST 2031
MD5 : e6:7b:58:6f:70:46:bf:e0:aa:51:f6:66:0b:11:9d:d9
SHA1 : 1c:58:a3:a8:51:8e:87:59:bf:07:5b:76:b7:50:d4:f2:df:26:4f:cd
Subject - CN=DigiCert Global Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
Issuer - CN=DigiCert Global Root CA, OU=www.digicert.com, O=DigiCert Inc, C=US
Valid From - Fri Nov 10 03:00:00 AST 2006
Valid To - Mon Nov 10 03:00:00 AST 2031
MD5 : 79:e4:a9:84:0d:7d:3a:96:d7:c0:4f:e2:43:4c:89:2e
SHA1 : a8:98:5d:3a:65:e5:e5:c4:b2:d7:d6:6d:40:c6:dd:2f:b1:9c:54:36
Accept certificate? [N]o, [T]emporarily, [P]ermanently : P 
[domain@10.1.25.196:8443 /] /profile=full-ha/subsystem=elytron/key-
store=httpsKS:add(path=”/app01/wildfly/domain/configuration/XXXXX.jks”, credential-
reference={clear-text=qwe333@@}, type=JKS)
{
"outcome" => "success",
"result" => undefined,
"server-groups" => undefined
}
[domain@10.1.25.196:8443 /] /profile=full-ha/subsystem=elytron/key-manager=httpsKM:add(key- store=httpsKS,algorithm="SunX509",credential-reference={clear-text=qwe333@@})
{
"outcome" => "success",
"result" => undefined,
"server-groups" => undefined
}
[domain@10.1.25.196:8443 /] /profile=full-ha/subsystem=elytron/server-ssl-
context=httpsSSC:add(key-manager=httpsKM,protocols=["TLSv1.2"])
{
"outcome" => "success",
"result" => undefined,
"server-groups" => undefined
}
[domain@10.1.25.196:8443 /] reload --host=master
[domain@10.1.25.196:8443 /] exit
[domain@10.1.25.196:8443 /] batch
[domain@10.1.25.196:8443 /] /profile=full-ha/subsystem=undertow/server=default-server/https- listener=https:undefine-attribute(name=security-realm)
[domain@10.1.25.196:8443 /] /profile=full-ha/subsystem=undertow/server=default-server/https- listener=https:write-attribute(name=ssl-context,value=httpsSSC)
[domain@10.1.25.196:8443 /] run-batch
[jbapps@sapjbint01 bin]$ ./jboss-cli.sh -c --controller=10.1.25.192:9990
[domain@10.1.25.192:9990 /] /host=master/subsystem=elytron/key-
store=httpsKS:add(path=XXXXX.jks,relative-to=jboss.domain.config.dir,credential-
reference={clear-text=qwe333@@},type=JKS)
{"outcome" => "success"}
[domain@10.1.25.192:9990 /] /host=master/subsystem=elytron/key-manager=httpsKM:add(key- store=httpsKS,algorithm="SunX509",credential-reference={clear-text=qwe333@@})
{"outcome" => "success"}
[domain@10.1.25.192:9990 /] /host=master/subsystem=elytron/server-ssl-context=httpsSSC:add(key-
manager=httpsKM,protocols=["TLSv1.2"])
{"outcome" => "success"}
[domain@10.1.25.192:9990 /] /host=master/core-service=management/management-
interface=http-interface:write-attribute(name=ssl-context,value=httpsSSC)
{
"outcome" => "success",
"result" => undefined,
"server-groups" => undefined,
"response-headers" => {"process-state" => "reload-required"}
}
[domain@10.1.25.192:9990 /] /host=master/core-service=management/management-interface=http-
interface:write-attribute(name=secure-interface,value=management)
{
"outcome" => "success",
"result" => undefined,
"server-groups" => undefined,
"response-headers" => {"process-state" => "reload-required"}
}
[domain@10.1.25.192:9990 /] /host=master/core-service=management/management-interface=http-
interface:write-attribute(name=secure-port,value=8443)
{
"outcome" => "success",
"result" => undefined,
"server-groups" => undefined,
"response-headers" => {"process-state" => "reload-required"}
}
[domain@10.1.25.192:9990 /] reload --host=master
Unable to connect due to unrecognised server certificate
Subject - CN=*.XXXXX.com,O=XXXX, L=XXXXX,C=XXXX - CN=DigiCert TLS RSA
SHA256 2020 CA1, O=DigiCert Inc, C=US
Valid From - Wed Oct 13 03:00:00 AST 2021
Valid To - Mon Nov 14 02:59:59 AST 2022
MD5 : ab:b7:3b:44:74:73:f2:59:c9:56:15:41:ca:8f:ff:95
SHA1 : 25:a7:c0:aa:1a:e3:4c:e4:c2:30:c2:28:46:a9:70:f2:5d:02:f7:06
Subject - CN=DigiCert TLS RSA SHA256 2020 CA1,O=DigiCert Inc,C=US
Issuer - CN=DigiCert Global Root CA, OU=www.digicert.com, O=DigiCert Inc, C=US
Valid From - Wed Apr 14 03:00:00 AST 2021
Valid To - Mon Apr 14 02:59:59 AST 2031
MD5 : e6:7b:58:6f:70:46:bf:e0:aa:51:f6:66:0b:11:9d:d9
SHA1 : 1c:58:a3:a8:51:8e:87:59:bf:07:5b:76:b7:50:d4:f2:df:26:4f:cd
Subject - CN=DigiCert Global Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
Issuer - CN=DigiCert Global Root CA, OU=www.digicert.com, O=DigiCert Inc, C=US
Valid From - Fri Nov 10 03:00:00 AST 2006
Valid To - Mon Nov 10 03:00:00 AST 2031
MD5 : 79:e4:a9:84:0d:7d:3a:96:d7:c0:4f:e2:43:4c:89:2e
SHA1 : a8:98:5d:3a:65:e5:e5:c4:b2:d7:d6:6d:40:c6:dd:2f:b1:9c:54:36<  
Accept certificate? [N]o, [T]emporarily, [P]ermanently : P 
[domain@10.1.25.192:8443 /] /profile=full-ha/subsystem=elytron/key-
store=httpsKS:add(path=”/app01/wildfly/domain/configuration/XXXXX.jks”, credential-
reference={clear-text=qwe333@@}, type=JKS)
{
"outcome" => "success",
"result" => undefined,
"server-groups" => undefined
}
[domain@10.1.25.192:8443 /] /profile=full-ha/subsystem=elytron/key-manager=httpsKM:add(key- store=httpsKS,algorithm="SunX509",credential-reference={clear-text=qwe333@@})
{
"outcome" => "success",
"result" => undefined,
"server-groups" => undefined
}
[domain@10.1.25.192:8443 /] /profile=full-ha/subsystem=elytron/server-ssl-
context=httpsSSC:add(key-manager=httpsKM,protocols=["TLSv1.2"])
{
"outcome" => "success",
"result" => undefined,
"server-groups" => undefined
}
[domain@10.1.25.192:8443 /] reload --host=master
[domain@10.1.25.192:8443 /] batch
[domain@10.1.25.192:8443 /] /profile=full-ha/subsystem=undertow/server=default-server/https-
listener=https:undefine-attribute(name=security-realm)
[domain@10.1.25.192:8443 /] /profile=full-ha/subsystem=undertow/server=default-server/https-
listener=https:write-attribute(name=ssl-context,value=httpsSSC)
[domain@10.1.25.192:8443 /] run-batch
12. Configuring Multicast
Go through the following steps to configure Multicast.
<socket-binding-group name="full-ha-sockets" default-interface="public">
Update “jboss.default.multicast.address” for all three below
<socket-binding name="jgroups-mping" interface="private" multicast-
address="${jboss.default.multicast.address:230.0.0.4}" multicast-port="45700"/>
<socket-binding name="jgroups-udp" interface="private" port="55200" multicast- address="${jboss.default.multicast.address:230.0.0.4}" multicast-port="45688"/>
<socket-binding name="modcluster" multicast-
address="${jboss.modcluster.multicast.address:224.0.1.105}" multicast-port="23364"/>
13. Configuring Access Log
In the master host, use the following commands.
<host name="default-host" alias="localhost">
<access-log pattern="%h %l %u %t &quot;%r&quot; %s %b &quot;%{i,Referer}&quot; &quot;%{i,User-Agent}&quot; Cookie: &quot;%{i,COOKIE}&quot; Set-Cookie: &quot;%{o,SET- COOKIE}&quot; SessionID: %S Thread: &quot;%I&quot; TimeTaken: %T"/>
</host>
/profile=full-ha /subsystem=undertow/server=default-server/host=default-host/setting=access-
log:add(pattern="%h %l %u %t \"%r\" %s %b \"%{i,Referer}\" \"%{i,User-Agent}\" Cookie:
\"%{i,COOKIE}\" Set-Cookie: \"%{o,SET-COOKIE}\" SessionID: %S Thread: \"%I\" TimeTaken: %T")
/profile=full-ha/subsystem=undertow/server=default-server/http-listener=default:write-
attribute(name=record-request-start-time,value=true)  
reload --host=master
---
[domain@10.1.25.196:8443 /] /profile=full-ha/subsystem=undertow/server=default-server/http-
listener=default:write-attribute(name=record-request-start-time,value=true)
{
"outcome" => "success",
"result" => undefined,
"server-groups" => {"T24_ATM" => {"host" => {
"master" => {"T24ATM_1" => {"response" => {
"outcome" => "success",
"response-headers" => {
"operation-requires-reload" => true,
"process-state" => "reload-required"
}
}}},
"slvatm02" => {"T24ATM_2" => {"response" => {
"outcome" => "success",
"result" => undefined,
"response-headers" => {
"operation-requires-reload" => true,
"process-state" => "reload-required"
}
}}}
}}}
}
[domain@10.1.25.196:8443 /] reload --host=master
To change the Log path (on both master and slave nodes) use the following commands.
cd /app01/wildfly/domain/configuration/
mv servers servers_OLD
mkdir -p servers
chmod -R 775 servers
Use the following commands for server log rotation.
<profile name="full-ha">
<subsystem xmlns="urn:jboss:domain:logging:8.0">
<size-rotating-file-handler name="FILE" autoflush="true">
<formatter>
<named-formatter name="PATTERN"/>
</formatter>
<file relative-to="jboss.server.log.dir" path="server.log"/>
<rotate-size value="5k"/>
<append value="true"/>
<suffix value=".yyyy-MM-dd"/>
</size-rotating-file-handler>
Use the following commands for Access log rotation.
/subsystem=logging/pattern-formatter=access-log-formatter:add(pattern="%s%n")
/subsystem=logging/size-rotating-file-handler=access-log:add(autoflush=true, append=true, named-
formatter=access-log-formatter, rotate-size=10m, max-backup-index=10, file={path=access.log,
relative-to=jboss.server.log.dir})
/subsystem=logging/logger=io.undertow.accesslog:add(handlers=[access-log], use-parent-
handlers=false)
/subsystem=undertow/server=default-server/host=default-host/setting=access-log:write-
attribute(name=use-server-log, value=true)
[jbapps@sapjbatm01 bin]$ ./jboss-cli.sh -c --controller=10.1.25.196:9990
[domain@10.1.25.196:8443 /] /profile=full-ha/subsystem=logging/pattern-formatter=access-log-
formatter:add(pattern="%s%n")
{
"outcome" => "success",
"result" => undefined,
"server-groups" => {"T24_ATM" => {"host" => {"master" => {"T24ATM_1" => {"response" =>
{"outcome" => "success"}}}}}}
}
[domain@10.1.25.196:8443 /] /profile=full-ha/subsystem=logging/size-rotating-file-handler=access-
log:add(autoflush=true, append=true, named-formatter=access-log-formatter, rotate-size=10m,
max-backup-index=10, file={path=access.log, relative-to=jboss.server.log.dir})
{
"outcome" => "success",
"result" => undefined,
"server-groups" => {"T24_ATM" => {"host" => {"master" => {"T24ATM_1" => {"response" =>
{"outcome" => "success"}}}}}}
}
[domain@10.1.25.196:8443 /] /profile=full
full full-ha
[domain@10.1.25.196:8443 /] /profile=full-
ha/subsystem=logging/logger=io.undertow.accesslog:add(handlers=[access-log], use-parent-
handlers=false)
{
"outcome" => "success",
"result" => undefined,
"server-groups" => {"T24_ATM" => {"host" => {"master" => {"T24ATM_1" => {"response" =>
{"outcome" => "success"}}}}}}
}
[domain@10.1.25.196:8443 /] /profile=full-ha/subsystem=undertow/server=default-
server/host=default-host/setting=access-log:write-attribute(name=use-server-log, value=true)
{
"outcome" => "success",
"result" => undefined,
"server-groups" => {"T24_ATM" => {"host" => {"master" => {"T24ATM_1" => {"response" => {
"outcome" => "success",
"response-headers" => {
"operation-requires-reload" => true,
"process-state" => "reload-required"
}
}}}}}}
}
[domain@10.1.25.196:8443 /] reload --host=master
[domain@10.1.25.196:8443 /] exit
And with that, you should be good to go!

This article was originally published on [our company blog](https://www.taashee.com/how-to-implement-jboss-eap-7-x-in-managed-domain-mode-in-a-few-easy-steps/).