3:I[39275,[],""]
5:I[61343,[],""]
6:I[23053,["7699","static/chunks/8e1d74a4-5fcc24cf3a9fd8c2.js","7240","static/chunks/53c13509-baa86b522e6ae78c.js","4740","static/chunks/4740-14bdf05e7ce04a11.js","9617","static/chunks/9617-544346a1cd0024b4.js","3185","static/chunks/app/layout-8c4bc5784f5090d9.js"],"StateProvider"]
7:I[19593,["7699","static/chunks/8e1d74a4-5fcc24cf3a9fd8c2.js","7240","static/chunks/53c13509-baa86b522e6ae78c.js","4740","static/chunks/4740-14bdf05e7ce04a11.js","9617","static/chunks/9617-544346a1cd0024b4.js","3185","static/chunks/app/layout-8c4bc5784f5090d9.js"],""]
8:I[18709,["7699","static/chunks/8e1d74a4-5fcc24cf3a9fd8c2.js","5706","static/chunks/9c4e2130-08078aeb5700c43b.js","5505","static/chunks/385cb88d-fd2f37c33b8aa92c.js","5452","static/chunks/5e22fd23-9bf9fa71e7554411.js","9956","static/chunks/ee560e2c-f551c028fd538293.js","4740","static/chunks/4740-14bdf05e7ce04a11.js","6648","static/chunks/6648-3bc9d66179346fb0.js","9160","static/chunks/app/not-found-5850ce7843ba4d5a.js"],"default"]
9:I[45723,["7699","static/chunks/8e1d74a4-5fcc24cf3a9fd8c2.js","7240","static/chunks/53c13509-baa86b522e6ae78c.js","4740","static/chunks/4740-14bdf05e7ce04a11.js","9617","static/chunks/9617-544346a1cd0024b4.js","3185","static/chunks/app/layout-8c4bc5784f5090d9.js"],"default"]
4:["all","weblogic","c"]
0:["79z6y6ppLce0GndJRjYzJ",[[["",{"children":[["all","weblogic","c"],{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],["",{"children":[["all","weblogic","c"],{"children":["__PAGE__",{},[["$L1","$L2"],null],null]},["$","$L3",null,{"parallelRouterKey":"children","segmentPath":["children","$4","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","styles":[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/402d889fee29bde2.css","precedence":"next","crossOrigin":"$undefined"}],["$","link","1",{"rel":"stylesheet","href":"/_next/static/css/0ff6cecb1d0e96f8.css","precedence":"next","crossOrigin":"$undefined"}],["$","link","2",{"rel":"stylesheet","href":"/_next/static/css/cb4e98a4c2dc4d80.css","precedence":"next","crossOrigin":"$undefined"}],["$","link","3",{"rel":"stylesheet","href":"/_next/static/css/a246b44e33111fd9.css","precedence":"next","crossOrigin":"$undefined"}],["$","link","4",{"rel":"stylesheet","href":"/_next/static/css/9d9d0f6a85930e46.css","precedence":"next","crossOrigin":"$undefined"}]]}],null]},[["$","html",null,{"lang":"en","children":["$","body",null,{"children":["$","$L6",null,{"children":[["$","$L7",null,{}],["$","$L3",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":["$","$L8",null,{}],"notFoundStyles":[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/cb4e98a4c2dc4d80.css","precedence":"next","crossOrigin":"$undefined"}]],"styles":null}],["$","$L9",null,{}]]}]}]}],null],null],[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/0cc2495744a38244.css","precedence":"next","crossOrigin":"$undefined"}]],"$La"]]]]
b:I[30043,["7699","static/chunks/8e1d74a4-5fcc24cf3a9fd8c2.js","5706","static/chunks/9c4e2130-08078aeb5700c43b.js","5505","static/chunks/385cb88d-fd2f37c33b8aa92c.js","5452","static/chunks/5e22fd23-9bf9fa71e7554411.js","9956","static/chunks/ee560e2c-f551c028fd538293.js","7240","static/chunks/53c13509-baa86b522e6ae78c.js","6051","static/chunks/795d4814-d7614a20709c27af.js","614","static/chunks/3d47b92a-f2bb54912083012c.js","9212","static/chunks/59650de3-13cfd2620b7240d2.js","522","static/chunks/94730671-a8ad9eca65504500.js","7675","static/chunks/b563f954-501d993050fd0717.js","1994","static/chunks/e34aaff9-cd556a7ee1a90c03.js","6990","static/chunks/13b76428-5a68792917164904.js","5957","static/chunks/30a37ab2-a5fc2d8864b3152b.js","6844","static/chunks/f25cdb8d-30c837856fb6d42d.js","7259","static/chunks/479ba886-8536ff4966e1aaf8.js","4740","static/chunks/4740-14bdf05e7ce04a11.js","6648","static/chunks/6648-3bc9d66179346fb0.js","4349","static/chunks/4349-c8f0646a83cc4179.js","4791","static/chunks/4791-6c93b9aca8a9f315.js","5225","static/chunks/5225-dc21c87d99338f19.js","9293","static/chunks/9293-d1b040d0324d0d5a.js","5919","static/chunks/5919-545104f05818203e.js","1413","static/chunks/1413-986ad1f4cd2d661e.js","2499","static/chunks/2499-61bd3b514e9c4cb8.js","4175","static/chunks/4175-fb05509a4e1790ec.js","5653","static/chunks/app/%5B...all%5D/page-f1bbbeae9a681a62.js"],"default"]
c:T6555,<p>&nbsp;</p>
<p style="text-align: justify;">Fails to start <a href="weblogic-server-installation" target="_blank" rel="noopener">weblogic</a> instances maintenance of Admin server as well as all managed servers etc. Troubleshooting in weblogic is found out the cause(Server fail, Server shutdown, SSL issue, Thread stuck, etc&hellip;) of WebLogic server failure if it occurs by servers logs</p>
<h2 style="text-align: justify;"><span style="font-size: 14pt; color: #e03e2d;"><strong>Troubleshooting Common Problems</strong></span></h2>
<ul>
<li style="text-align: justify;">
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Before You Start the Cluster</strong></span></h3>
</li>
</ul>
<p style="text-align: justify;">You can do several things to help prevent problems before you boot the cluster.</p>
<ul>
<li style="text-align: justify;">
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Check for a Cluster License</strong></span></h3>
</li>
</ul>
<p style="text-align: justify;">Your WebLogic Server license must include the clustering feature. If you try to start a cluster without a clustering license, you will see the error message&nbsp;<em>Unable to find a license for clustering.</em></p>
<ul>
<li style="text-align: justify;">
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Check the Server Version Numbers</strong></span></h3>
</li>
</ul>
<p style="text-align: justify;">All Managed Servers in a cluster and the cluster's <a href="https://tekslate.com/system-administration-tools/" target="_blank" rel="noopener">Administration Server</a> should run under the same version of WebLogic Server. The major and minor version numbers (e.g 9.1), service packs, and attached patch levels should be the same across the cluster.</p>
<ul>
<li style="text-align: justify;">
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Check the Multicast Address</strong></span></h3>
</li>
</ul>
<p style="text-align: justify;">a) A problem with the multicast address is one of the most common reasons a cluster does not start or a server fails to join a cluster.</p>
<p style="text-align: justify;">b) A multicast address is required for each cluster. The multicast address can be an IP number between 224.0.0.0 and 239.255.255.255, or a hostname with an IP address within that range.</p>
<p style="text-align: justify;">c) You can check a cluster's multicast address and port on its Configuration--&gt;Multicast tab in the Administration Console.</p>
<p style="text-align: justify;">d) For each cluster on a network, the combination of a multicast address and port must be unique. If two clusters on a network use the same multicast address, they should use different ports. If the clusters use different multicast addresses, they can use the same port or accept the default port, 7001.</p>
<p style="text-align: justify;">e) Before booting the cluster, make sure the cluster's multicast address and port are correct and do not conflict with the multicast address and port of any other clusters on the network.</p>
<p style="text-align: justify;">f) The errors you are most likely to see if the multicast address is bad are:</p>
<ul style="text-align: justify;">
<li><em>Unable to create a multicast socket for clustering</em></li>
<li><em>Multicast socket send error</em></li>
<li><em>Multicast socket receive an error</em></li>
</ul>
<blockquote>
<p style="text-align: center;"><em>Inclined to build a profession as Weblogic Developer? Then here is the blog post on, explore <a title="Weblogic Training" href="weblogic-server-administration-training" target="_blank" rel="noopener"><span style="color: #e03e2d;"><strong>Weblogic Training</strong></span></a></em></p>
</blockquote>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Check the CLASSPATH Value</strong></span></h3>
<p style="text-align: justify;">Make sure the value of&nbsp;CLASSPATH&nbsp;is the same on all managed servers in the cluster.&nbsp;CLASSPATH&nbsp;is set by the&nbsp;setEnv&nbsp;script, which you run before you run&nbsp;startManagedWebLogic&nbsp;to start the managed servers.</p>
<p style="text-align: justify;">By default,&nbsp;setEnv&nbsp;sets this value for&nbsp;CLASSPATH&nbsp;(as represented on Windows systems):</p>
<p style="text-align: justify;">set WL_HOME=C:beaweblogic700</p>
<p style="text-align: justify;">set JAVA_HOME=C:beajdk131</p>
<p style="text-align: justify;">.</p>
<p style="text-align: justify;">.</p>
<p style="text-align: justify;">set CLASSPATH=%JAVA_HOME%libtools.jar;</p>
<p style="text-align: justify;">%WL_HOME%serverlibweblogic_sp.jar;</p>
<p style="text-align: justify;">%WL_HOME%serverlibweblogic.jar;</p>
<p style="text-align: justify;">%CLASSPATH%</p>
<p style="text-align: justify;">If you change the value of CLASSPATH on one managed server or change how setEnv sets CLASSPATH, you must change it on all managed servers in the cluster.</p>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Check the Thread Count</strong></span></h3>
<p style="text-align: justify;">Each server instance in the cluster has a default execute queue, configured with a fixed number of executing threads. To view the thread count for the default execute queue, choose the Configure Execute Queue command on the Advanced Options portion of the Configuration&gt; General tab for the server. The default thread count for the default queue is 15, and the minimum value is 5. If the value of Thread Count is below 5, change it to a higher value so that the Managed Server does not hang on startup.</p>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>After You Start the Cluster</strong></span></h3>
<p style="text-align: justify;">This section describes the first troubleshooting steps to perform if you have problems trying to start a cluster.</p>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Check Your Commands</strong></span></h3>
<p style="text-align: justify;">If the cluster fails to start, or a server fails to join the cluster, the first step is to check any commands you have entered, such as&nbsp;startManagedWebLogic&nbsp;or a&nbsp;java&nbsp;interpreter command, for errors and misspellings.</p>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Getting a JRockit Thread Dump under Linux</strong></span></h3>
<p style="text-align: justify;">If you use the JRockit JVM under Linux, use one of the following methods to generate a thread dump.</p>
<ul style="text-align: justify;">
<li>Use the&nbsp;weblogic.admin THREAD_DUMP&nbsp;command.</li>
<li>If the JVM's management server is enabled (by starting the JVM with the -Xmanagement&nbsp;option), you can generate a thread dump using the JRockit Management Console.</li>
<li>Use&nbsp;<strong>Kill -3&nbsp;<em>PID</em></strong>, where&nbsp;<em>PID</em>&nbsp;is the root of the process tree.</li>
</ul>
<p style="text-align: justify;">To obtain the root PID, perform a: <strong>ps -efHl | grep <a href="core-java-tutorials" target="_blank" rel="noopener">'java</a>' **. **</strong></p>
<p style="text-align: justify;">Using a&nbsp;grep&nbsp;argument that is a string that will be found in the process stack that matches the server startup command. The first PID reported will be the root process, assuming that the&nbsp;ps&nbsp;command has not been piped to another routine.</p>
<p style="text-align: justify;">Under Linux, each executing thread appears as a separate process under the Linux process stack. To use Kill -3 on Linux you supply must match the PID of the main WebLogic execute thread, otherwise, no thread dump will be produced.</p>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Check Garbage Collection</strong></span></h3>
<p style="text-align: justify;">If you are experiencing cluster problems, you should also check the garbage collection on the managed servers. If garbage collection is taking too long, the servers will not be able to make the frequent heartbeat signals that tell the other cluster members they are running and available.</p>
<p style="text-align: justify;">If garbage collection (either first or second-generation) is taking 10 or more seconds, you need to tune heap allocation (the ms mx parameter) on your system.</p>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Check MultiCast Address:</strong></span></h3>
<ul>
<li style="text-align: justify;">You can verify that multicast is working by running&nbsp;utils.MulticastTest&nbsp;from one of the managed servers.</li>
<li style="text-align: justify;">Run utils.MulticastTest</li>
</ul>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Monitor Weblogic through the command line</strong></span></h3>
<p style="text-align: justify;">Everything visible through the Weblogic admin console (http://localhost:7001/console) can be accessed through a command line java tool. This tool can be used to gather data about the weblogic servers via scripting.&nbsp; There are at least two ways to get runtime monitoring data about Weblogic processes. This document covers the use of the java classes that get information from management beans (mbeans). There is also a java tool that allows for browsing the mbean tree like an ftp client: <a href="http://php.ptagis.org/wiki/index.php/Weblogic_Scripting_Tool_%28WLST%29">Weblogic Scripting Tool (WLST)</a>.</p>
<h2 style="text-align: justify;"><span style="font-size: 14pt; color: #e03e2d;"><strong>Set the Environment:</strong></span></h2>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Set the java environment</strong></span></h3>
<p style="text-align: justify;">There is a script for setting the CLASSPATH and PATH so that this tool can work. On <em>pitblade (WL Server)</em>, the setWLSEnv script is /dsk2/local/bea81/weblogic81/server/bin/setWLSEnv.sh</p>
<p style="text-align: justify;"><em>pitblade:II:root: &gt; source setWLSEnv.sh</em></p>
<p style="text-align: justify;"><em>CLASSPATH=/dsk2/local/bea81/jdk141_02/lib/tools.jar:/dsk2/local/bea81/weblogic81/server/lib/weblogic_sp.jar:</em></p>
<p style="text-align: justify;"><em>/dsk2/local/bea81/weblogic81/server/lib/weblogic.jar:/dsk2/local/bea81/weblogic81/server/lib/ojdbc14.jar:</em></p>
<p style="text-align: justify;"><em>:/dsk1/AdvIngres/ing26/ingres/lib/edbc.jar:/dsk1/AdvIngres/ing26/ingres/lib/edbc.jar</em></p>
<p style="text-align: justify;"><em>&nbsp;</em></p>
<p style="text-align: justify;"><em>PATH=/dsk2/local/bea81/weblogic81/server/bin:/dsk2/local/bea81/jdk141_02/jre/bin:/dsk2/local/bea81/jdk141_02/bin:</em></p>
<p style="text-align: justify;"><em>/dsk1/AdvIngres/ing26/ingres/bin:/dsk1/AdvIngres/ing26/ingres/utility:/dsk1/AdvIngres/ing26/ingres/files:</em></p>
<p style="text-align: justify;"><em>/dsk1/AdvIngres/ing26/ingres/lib:/dsk1/AdvIngres/ing26/ingres/SUNWspro/bin:/sbin:/usr/sbin:/bin:/usr/bin:</em></p>
<p style="text-align: justify;"><em>/usr/ucb:/etc:/usr/etc:/opt/fw/bin:/var/adm/psmfc/bin:/usr/openwin/bin:/usr/local/bin:/usr/psmfc/bin:</em></p>
<p style="text-align: justify;"><em>/usr/ccs/bin:/usr/lib/nis:/opt/gnu/bin:/usr/local/bin</em></p>
<p style="text-align: justify;"><em>Your environment has been set.</em></p>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Verify that the java environment is set properly&nbsp;</strong><strong>Success</strong></span></h3>
<p style="text-align: justify;"><em>pitblade:II:root: &gt; java weblogic.Admin</em></p>
<p style="text-align: justify;"><em>weblogic.Admin is a command-line utility for managing WebLogic Server. Try:</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; weblogic.Admin help LIFECYCLE&nbsp;&nbsp; Starting, stopping, discovering servers</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; weblogic.Admin help INFO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Retrieving info about WebLogic Server</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; weblogic.Admin help JDBC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Working with JDBC connection pools</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; weblogic.Admin help MBEAN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Working with WebLogic Server MBeans</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; weblogic.Admin help CLUSTER&nbsp;&nbsp;&nbsp;&nbsp; Working with clusters</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; weblogic.Admin help ALL&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Help for all commands</em></p>
<p style="text-align: justify;"><em>Usage: java [&lt;SSL trust options&gt;] weblogic.Admin</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [ [-url | -adminurl] [&lt;protocol&gt;://]&lt;listen-address&gt;:&lt;port&gt;]</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -username &lt;username&gt; -password &lt;password&gt;</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;COMMAND&gt; &lt;ARGUMENTS&gt;</em></p>
<p style="text-align: justify;"><em>More info available at: http://e-docs.bea.com/wls/docs81/admin_ref/cli.html</em></p>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Failure</strong></span></h3>
<p style="text-align: justify;"><em>pitblade:II:root: &gt; java weblogic.Admin</em></p>
<p style="text-align: justify;"><em>Exception in thread "main" java.lang.NoClassDefFoundError: weblogic/Admin</em></p>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>&nbsp;</strong><strong>get state</strong></span></h3>
<p style="text-align: justify;"><em>pitblade:II:root: &gt; java weblogic.Admin -username user -password pass GETSTATE myserver</em></p>
<p style="text-align: justify;"><em>Current state of "myserver"&nbsp;: RUNNING</em></p>
<h3 style="text-align: justify;"><strong>&nbsp;</strong><span style="font-size: 12pt; color: #e03e2d;"><strong>get server config</strong></span></h3>
<p style="text-align: justify;"><em>pitblade:II:root: &gt; java weblogic.Admin -username user -password pass GET -pretty -type Server</em></p>
<p style="text-align: justify;"><em>---------------------------</em></p>
<p style="text-align: justify;"><em>MBeanName: "mydomain:Name=myserver,Type=Server"</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AcceptBacklog: 50</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AdministrationPort: 0</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AutoKillIfFailed: false</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AutoRestart: true</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; COM: myserver</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; COMEnabled: false</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CachingDisabled: true</em></p>
<p style="text-align: justify;"><strong>&nbsp;</strong></p>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Test if weblogic is running:</strong></span></h3>
<p style="text-align: justify;">On command prompt issue this command:</p>
<p style="text-align: justify;"><em>ps -if | grep java</em></p>
<p style="text-align: justify;">You should get a response like this:</p>
<p style="text-align: justify;"><em>reedi.psmfc.org:C1:root: &gt; ps -eaf | grep java</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp; root&nbsp; 6233&nbsp; 6221&nbsp; 0&nbsp;&nbsp; Jan 31&nbsp;?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2:50 /usr/local/bea81/jdk141_02/bin/java -server -Xms32m -Xmx200m -XX:MaxPermSize=12</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp; root&nbsp; 6273&nbsp; 6261&nbsp; 0&nbsp;&nbsp; Jan 31&nbsp;?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 361:59 /usr/local/bea81/jdk141_02/bin/java -server -Xms256m -Xmx512m -Djava.awt.headle</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp; root&nbsp; 1121&nbsp; 6273&nbsp; 0&nbsp;&nbsp; Feb 08&nbsp;?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 15:29 /usr/local/bea81/jdk141_02/jre/bin/java -Xms256m -Xmx1024m -cp /global/ds1/pitw</em></p>
<p style="text-align: justify;"><em>&nbsp;&nbsp;&nbsp; root&nbsp; 2087 20643&nbsp; 0 13:44:11 pts/1&nbsp;&nbsp;&nbsp; 0:00 grep java</em></p>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>&nbsp;</strong><strong>Restart weblogic on the cluster</strong></span></h3>
<ul style="text-align: justify;">
<li>Use the admin console to request a graceful shutdown of the server</li>
<li>start a bash shell</li>
<li>Use this command to start:</li>
</ul>
<p style="text-align: justify;"><em>cd /usr/local/bea81/user_projects/mydomain2</em></p>
<p style="text-align: justify;"><em>nohup ./startManagedWebLogic.sh &amp;</em></p>
<ul style="text-align: justify;">
<li>Tail &ndash;f nohup.out until the server enters the running state</li>
<li>repeat for each server in the cluster</li>
</ul>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Restart weblogic on the development server</strong></span></h3>
<ul style="text-align: justify;">
<li>Use the admin console to request a graceful shutdown</li>
<li>start a bash shell on the server</li>
<li>Use this command to start:</li>
</ul>
<p style="text-align: justify;"><em>cd /dsk2/local/bea81/user_projects/mydomain</em></p>
<p style="text-align: justify;"><em>nohup ./startWeblogic.sh &amp;</em></p>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Weblogic and apache debug info</strong></span></h3>
<p style="text-align: justify;">On pitblade(server), the file /tmp/wlproxy.log is filling the filesystem and crashing the server. Apparently, this file is debugged information generated by apache about the weblogic proxy plug-in. It probably causes a severe drain on resources and should not be generally active. Here is the relevant stanza from httpd.conf:</p>
<p style="text-align: justify;">Note: The specified location of the log file seems to be ignored. There would not have been a problem if the log file was actually located where it was directed in the configuration.</p>
<p style="text-align: justify;"><em>&lt;IfModule mod_weblogic.c&gt;</em></p>
<p style="text-align: justify;"><em>&nbsp; WebLogicHost pitblade</em></p>
<p style="text-align: justify;"><em>&nbsp; WebLogicPort 7001</em></p>
<p style="text-align: justify;"><em>&nbsp; MatchExpression *.jsp</em></p>
<p style="text-align: justify;"><em>&nbsp; #MatchExpression&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; /ptagis/home/regTagAction&nbsp;&nbsp;&nbsp; </em></p>
<p style="text-align: justify;"><em>WebLogicHost=pitblade|WebLogicPort=7001|Idempotent=OFF</em></p>
<p style="text-align: justify;"><em>&nbsp; Debug ON</em></p>
<p style="text-align: justify;"><em>&nbsp; WLLogFile /var/log/bea/wlproxy.log</em></p>
<p style="text-align: justify;"><em>&nbsp; HungServerRecoverSecs 30000</em></p>
<p style="text-align: justify;"><em>&lt;/IfModule&gt;</em></p>
<p style="text-align: justify;">After changing this setting, apache needs a restart like this:</p>
<p style="text-align: justify;"><em>apache2/bin/apachectl restart</em></p>
<p style="text-align: justify;">Turned off this debugging output on pitblade and bay. The response time seems better as a result.</p>
<h2 style="text-align: justify;"><span style="font-size: 14pt; color: #e03e2d;"><strong>Optimization Techniques:</strong></span></h2>
<ul style="list-style-type: square; text-align: justify;">
<li>Open source load generation tools
<ul>
<li><a href="apache-storm-tutorials" target="_blank" rel="noopener">Apache</a> JMeter, Grinder, OpenSTA, Dieseltest</li>
</ul>
</li>
<li>Starting the sun JVM with -hotspot allows it to dynamically optimize the bytecode</li>
<li>If you allocate too much memory to a jvm, it can make garbage collection run slower and make the app stall for best performance, set min, and max memory for the jvm to the same value. the growing and shrinking of the jvm have overhead.</li>
<li>Start with -verbosegc on the command line. This will include in stdout information about the garbage collection. It should take less than a second. If GC takes longer than 3 seconds, then reduce the heap size to make GC happen more often and thus have GC do less work each time.</li>
<li>Can turn on generational GC (NewSize) must be using hotspot. Creates a nursery in the heap where partial GCs run more frequently. Assumes most objects are short-lived.</li>
<li>JRockit is only supported on Intel. Beta support for solaris.</li>
<li>Locate the bottleneck: CPU, IO, DB.</li>
<li>Network tune: set tcp_time_wait_interval from 240 to 60 on solaris</li>
<li>Execute thread pool is set to 25 in production mode and 15 on development</li>
<li>Native IO socket readers are much faster than pure java threads. So check the box that says enable native IO.</li>
<li>25 to 65 are optimal for Execute threads.</li>
<li>A stuck thread cannot be released without rebooting the jvm. When all the threads in the server are stuck, the server's health is flagged as critical. Nodemanager can be set to automatically restart a critical server.</li>
<li>Object pooling, passivation, activation.</li>
</ul>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Common WebLogic Server Deadlocks and How to Avoid Them</strong></span></h3>
<p style="text-align: justify;">While there are many possible causes of performance degradation or hangs, this article can't possibly cover them all. Instead, we'll look at three common mistakes in WebLogic Server applications that can deadlock the server or bring your performance to a screeching halt.</p>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Thread Dumps</strong></span></h3>
<p style="text-align: justify;">The best Java tool for diagnosing deadlocks is a Java virtual machine thread dump. A thread dump is a snapshot of the virtual machine's current state, including stack traces for each Java thread. Many virtual machines also include information about the Java monitors held by each thread. Monitor information is especially useful for diagnosing deadlocks and performance problems in your application. On Windows platforms, you can generate a thread dump by pressing Ctrl-Break in the virtual machine's window. On Unix systems, a SIGQUIT signal must be sent to the Java virtual machine process. This can be done with a kill -3 &lt;process id&gt;.</p>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Deadly Embrace</strong></span></h3>
<ul>
<li style="text-align: justify;">The classic deadlock problem is the deadly embrace: Thread 1 owns Lock A and waits on Lock B, Thread 2 owns Lock B and waits on Lock A. These threads are deadlocked and will remain blocked in this state. In many cases, the remaining threads will eventually enter the deadlock by attempting to acquire Lock A or Lock B and waiting. A thread dump is one of the best ways to discover a deadly embrace deadlock. Most virtual machines include a thread state for each Java thread in the dump. The most common thread states are: R - running; MW - monitor wait; CW - condition wait. Threads in the MW state are blocked, waiting to enter a synchronized block and acquire a Java monitor. Since the thread dump includes the Java thread's stack trace, it's also possible to determine which monitor is blocking the thread. If multiple threads are in the MW state on the same monitor, it's a good indication that there's either a lot of contention for this monitor or the server is deadlocked. In a deadlock situation, you should be able to determine the other threads blocked in MW and their held monitors.</li>
<li style="text-align: justify;">There are two classic techniques for solving deadly embrace deadlocks: deadlock avoidance and deadlock detection. Deadlock avoidance is merely changing or structuring your code so that it can't hit the deadlock case. A common solution is to implement lock ordering. If Lock A is always acquired before Lock B then you can't have a deadly embrace on these two locks. It's also a good idea to minimize the time that a monitor is held. Every extra line of code that runs under a monitor is another chance for someone to add a deadlock. Deadlock detection is commonly implemented by databases for their locks, but it doesn't usually find its way into programming languages. In deadlock detection, deadlocks are automatically discovered and one or more deadlock participants (known as the victims) are killed and release their locks to break the deadlock. Java virtual machines do not break deadlocks on Java monitors, so deadlock avoidance is necessary.</li>
</ul>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Out-of-Threads Deadlock</strong></span></h3>
<p style="text-align: justify;">Another common way to deadlock an application is what I call the "out of threads" deadlock. Unfortunately, this deadlock often doesn't show up until a load test or, in the worst case, when your production application receives a lot of traffic. In this scenario, your WebLogic Server is running with a fixed number of threads. The application includes logic where a given request or action performs work in one thread and then blocks on work that must be done in another thread.</p>d:T40fc,<p>&nbsp;</p>
<p>At the end of this chapter you will be able to:</p>
<ul>
<li><strong>Cluster Introduction and Architecture</strong></li>
<li><strong>Networks and Clusters</strong></li>
<li><strong>Cluster Communication</strong></li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Definition: Clustering</strong></span></h2>
<ul>
<li>A cluster is a group of WebLogic Server instances, working in coordination.</li>
</ul>
<p>&nbsp; <img class="alignnone wp-image-2701" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1216-460x213.png" alt="Clustering" width="437" height="201" /> &nbsp;</p>
<p>&nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Benefits of Clustering</strong></span></h3>
<ul>
<li>There are two main benefits of clustering together WebLogic servers:
<ul>
<li>Scalability</li>
<li>High-Availability</li>
</ul>
</li>
</ul>
<ul>
<li>Scalability allows you to add and remove servers without disrupting current services.</li>
</ul>
<ul>
<li>High-Availability ensures that when a server (in a cluster) fails, there are other servers to take over the work so the client is not affected.</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Key Capabilities:</strong></span></h3>
<p>The key capabilities of a WebLogic cluster are:</p>
<ul>
<li><span style="color: #e03e2d;">Application Failover</span></li>
</ul>
<p>When an object in an application is performing a task becomes unavailable, another object will take over and finish the job.</p>
<ul>
<li><span style="color: #e03e2d;">Site Failover</span></li>
</ul>
<p>When all the services and applications in a single site fail they can switch to a separate site and continue processing.</p>
<ul>
<li><span style="color: #e03e2d;">Server Migration</span></li>
</ul>
<p>When a server fails, pinned services can be migrated to another server in a cluster.</p>
<ul>
<li><span style="color: #e03e2d;">Load Balancing</span></li>
</ul>
<p>The even distribution of tasks and communications across multiple servers. &nbsp;</p>
<blockquote>
<p style="text-align: center;"><em>Inclined to build a profession as Weblogic Developer? Then here is the blog post on, explore <a title="Weblogic Training" href="weblogic-server-administration-training" target="_blank" rel="noopener"><span style="color: #e03e2d;"><strong>Weblogic Training</strong></span></a></em></p>
</blockquote>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Cluster Architecture:</strong></span></h2>
<ul>
<li>Applications are generally broken into multiple tiers, each representing their distinct functionality:
<ul>
<li>Web tier</li>
<li>Presentation tier</li>
<li>Business or object tier</li>
</ul>
</li>
</ul>
<ul>
<li>WebLogic provides clustering support for all three tiers.</li>
<li>Other services, such as JMS and <a href="jdbc-weblogic" target="_blank" rel="noopener">JDBC</a>, can take advantage of clusters but load-balancing and failover is a little different.</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Deciding on Cluster Architecture</strong></span></h3>
<p>Good architecture is somewhat subjective but there are a few global considerations:</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp;1.&nbsp; Performance</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; 2. Efficient replication</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; 3. Optimal load balancing</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; 4. Effective failover</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; 5. Reliable communication</p>
<ul>
<li>There are two primary cluster architectures to choose from:
<ul>
<li>Basic Cluster architecture</li>
<li>Multi-tier architecture</li>
</ul>
</li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Basic Cluster Architecture</strong></span></h2>
<p>Basic cluster architecture combines static HTTP, presentation logic, business logic, and objects into one cluster.</p>
<p><img class="alignnone wp-image-2702" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1310-460x255.png" alt="Basic cluster architecture" width="408" height="226" /> &nbsp;</p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Multi-Tier Cluster Architecture</strong></span></h2>
<p>The Web tier and the business logic with services can be separated into two clusters.</p>
<p><img class="alignnone wp-image-2703" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/147-460x245.png" alt="Multi tier architecture" width="434" height="230" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>When to Use Multi-tier Architecture</strong></span></h3>
<ul>
<li>The multi-tier cluster is recommended for Web Applications that require:
<ul>
<li>Load balancing for method calls to clustered EJBs</li>
<li>Flexibility for load balancing between servers that provide</li>
</ul>
</li>
</ul>
<ul>
<li>HTTP content and servers that provide clustered objects
<ul>
<li>Higher availability (fewer single points of failure)</li>
<li>More flexible security</li>
</ul>
</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Basic Cluster Architecture Advantages and Disadvantages</strong></span></h3>
<ul>
<li>The basic cluster architecture has these advantages:
<ul>
<li>Easy administration</li>
<li>Flexible load balancing</li>
<li>Robust security</li>
</ul>
</li>
</ul>
<ul>
<li>The basic cluster architecture has these disadvantages:
<ul>
<li>Cannot load balance EJB method calls</li>
<li>Load balancing across the tiers may become unbalanced</li>
</ul>
</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Multi-tier Advantages and Disadvantages:</strong></span></h3>
<ul>
<li>The multi-tier architecture has these advantages:
<ul>
<li>Improved load balancing</li>
<li>Load balancing of EJB methods</li>
<li>Higher availability</li>
<li>Improved security options</li>
</ul>
</li>
</ul>
<ul>
<li>The multi-tier architecture has these disadvantages:
<ul>
<li>Can create a bottleneck when presentation tier makes frequent calls to the business logic</li>
<li>Increased licensing cost</li>
<li>Added firewall configuration complexity</li>
</ul>
</li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Proxy Servers</strong></span></h2>
<ul>
<li>Proxy servers are used to provide load balancing and failover for a cluster.
<ul>
<li>Are the client&rsquo;s first level of interaction with the cluster</li>
<li>Give the cluster its single server appearance</li>
</ul>
</li>
<li>A proxy server can be either software-based or hardware-based.</li>
<li>A software-based proxy server may be an internal WebLogic servlet or a 3rd party application.</li>
<li>A hardware-based proxy server is typically a physical load balancer.</li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Basic Cluster Proxy Architecture:</strong></span></h2>
<p>Similar to the basic cluster architecture, except for static content, is hosted on non-clustered HTTP servers.</p>
<p><img class="alignnone wp-image-2704" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/157-460x224.png" alt="Basic Cluster Proxy architecture" width="419" height="204" /> &nbsp;</p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Multi-Tier Cluster Proxy Architecture</strong></span></h2>
<p>Similar to the multi-tier cluster architecture, except for static content, is hosted on non-clustered HTTP servers.</p>
<p><img class="alignnone wp-image-2705" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/167-460x220.png" alt="Multi-tier cluster proxy architecture" width="447" height="213" /> &nbsp;</p>
<p>&nbsp;</p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>WLS HttpClusterServlet</strong></span></h2>
<p><img class="alignnone wp-image-2706" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/177-460x256.png" alt="WLS Http Cluster servlet" width="437" height="242" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>WLS Plug-Ins&hellip;</strong></span></h3>
<ul>
<li>WLS is compatible with major Web servers using the following plug-ins:
<ul>
<li>Sun Java System Web Server plug-in (formerly Netscape iPlanet or Sun One Web Server)</li>
<li>IIS plug-in (Microsoft IIS)</li>
<li>Apache plug-in</li>
</ul>
</li>
</ul>
<ul>
<li>Plug-ins:
<ul>
<li>Delegate dynamic content requests to WLS</li>
<li>Round-robin across a cluster</li>
<li>Support routing based on URL path or on the MIME type of the requested file or both</li>
<li>Route HTTP requests to back-end WLS instances based on session cookie or URL rewriting</li>
<li>Avoid failed servers in the cluster</li>
</ul>
</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Proxy Plug-in Vs. Load Balancer</strong></span></h3>
<ul>
<li>There are many advantages to using a physical load balancer instead of the proxy plug-in:
<ul>
<li>No need to configure client plug-ins</li>
<li>Eliminating the proxy layer reduces the number of connections</li>
<li>The availability of more sophisticated load balancing algorithms</li>
</ul>
</li>
<li>There are a number of disadvantages as well:
<ul>
<li>Additional administration</li>
<li>Explicit configuration of &ldquo;sticky&rdquo; sessions for stateful web Applications</li>
</ul>
</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Architecture Recommendations</strong></span></h3>
<ul>
<li>If possible, place static web content on separate web servers in the DMZ.</li>
<li>Use combined tier architecture if your presentation and control tier makes multiple invocations of the business tier.</li>
<li>Make sure that your architecture choice supports passing active and passive cookies between the cluster and client application.</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Clusterin Networks</strong></span></h3>
<ul>
<li>WebLogic Server clusters can be created in three different kinds of networks:
<ul>
<li>Local Area Networks</li>
<li>Metropolitan Area Networks</li>
<li>Wide Area Networks</li>
</ul>
</li>
</ul>
<ul>
<li>When you are configuring your cluster, you will need to keep in mind the type of network you are using.</li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Local Area Networks</strong></span></h2>
<ul>
<li>A local area network (LAN) serves a local set of computers.
<ul>
<li>They usually use high quality, high-speed communication links</li>
<li>Typical data transmission speeds are 100 megabits/second</li>
</ul>
</li>
<li>Most clusters exist within a single LAN</li>
</ul>
<p>&nbsp; <img class="alignnone wp-image-2707" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/187-460x126.png" alt="LAN" width="435" height="119" /> &nbsp;</p>
<p>&nbsp;</p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Metropolitan Area Networks:</strong><strong>&nbsp;</strong></span></h2>
<ul>
<li>A Metropolitan Area Network (MAN) is a network that usually spans a campus or a city.</li>
<li>You can have different clusters located reasonably close to each other within a MAN.</li>
</ul>
<p><img class="alignnone wp-image-2708" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/197-460x141.png" alt="MAN" width="435" height="132" /> &nbsp;</p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Wide Area Networks</strong></span></h2>
<ul>
<li>A Wide Area Network (WAN) usually spans a wider geographical area and can be made up of smaller MANs and Local Area Networks (LAN).</li>
<li>You can have different clusters located in different regions within a WAN.</li>
</ul>
<p>A cluster can be located in different LANs within a MAN or within a WAN</p>
<p><img class="alignnone wp-image-2709" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/207-460x111.png" alt="WAN" width="433" height="104" /> &nbsp; &nbsp;</p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Cluster Communication</strong></span></h2>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Server Communication in a Cluster</strong></span></h3>
<ul>
<li>WebLogic Server instances in a cluster communicate with one another using two different techniques:
<ul>
<li>Multicast (UDP)</li>
<li>Sockets (peer-to-peer TCP)</li>
</ul>
</li>
<li>IP multicast broadcasts one-to-many communications among clustered instances.</li>
<li>IP sockets are used for peer-to-peer communications between servers.</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Detecting a Failure:</strong> </span><strong>&nbsp;</strong></h3>
<ul>
<li>WebLogic clusters detect the failure of a server instance in the following ways:
<ul>
<li>Through the use of IP sockets</li>
<li>Through the WebLogic server heartbeat</li>
</ul>
</li>
</ul>
<ul>
<li>If a server in the cluster unexpectedly closes its socket, it will be marked as "failed" and its services will not be used.</li>
<li>Server instances use multicast to broadcast heartbeats every 10 seconds to other server instances in the cluster.
<ul>
<li>If three heartbeats are missed from a peer server, the server is marked as "failed" and its services will not be used</li>
</ul>
</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>One-to-Many Communications</strong></span></h3>
<ul>
<li>WebLogic Server uses one-to-many communication for:</li>
</ul>
<ul>
<li>Cluster-wide JNDI updates</li>
<li>Cluster &ldquo;heartbeats&rdquo;</li>
</ul>
<ul>
<li>Because all one-to-many communications occur over IP multicast, when designing a cluster, consider these factors:
<ul>
<li>If your cluster spans multiple subnets, your network must be configured to reliably transmit messages</li>
<li>A firewall can break IP multicast transmissions</li>
<li>The multicast address should not be shared with other applications</li>
<li>Multicast storms may occur</li>
</ul>
</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Peer-to-Peer Communications:</strong></span></h3>
<ul>
<li>WebLogic Server uses peer-to-peer communications for:</li>
</ul>
<ul>
<li>Accessing non-clustered objects that reside on a remote server instance in the cluster</li>
<li>Replicating HTTP session states and stateful session EJB states between a primary and a secondary server</li>
<li>Accessing clustered objects that reside on a remote server instance (typically, in a multi-tier cluster architecture)</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Multi-Tier Communications:</strong></span></h3>
<ul>
<li>Multi-tier clusters will require more IP Sockets than a combined-tier cluster:
<ul>
<li>One socket for replicating session states</li>
<li>One socket for each WebLogic Server in the EJB cluster, for accessing remote objects</li>
</ul>
</li>
<li>As an example, using a three-node cluster, the worst-case scenario would be five open sockets per server:
<ul>
<li>One primary and secondary replicated session</li>
<li>Each server simultaneously invokes a remote EJB method on each node in the cluster</li>
</ul>
</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Communication in a WAN:</strong></span></h3>
<ul>
<li>In a WAN, the servers in your cluster may span multiple subnets.</li>
</ul>
<ul>
<li>In order for multicast messages to reliably transmit across the WAN your network must meet the following requirements:
<ul>
<li>Full support of IP multicast packet propagation</li>
<li>A network latency that allows for multicast messages to reach their destination in 200 to 300 milliseconds</li>
<li>A multicast time-to-live value high enough to ensure that routers do not discard multicast packets</li>
</ul>
</li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Summary:</strong></span></h2>
<p>In this chapter we discussed:</p>
<ul>
<li><strong>Cluster Introduction and Architecture</strong></li>
<li><strong>Networks and Clusters</strong></li>
<li><strong>Cluster Communication</strong></li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Check out our Related Courses</strong></span></h2>
<ul>
<li><a title="Weblogic Tutorials" href="tutorialsweblogic-tutorials-how-to" target="_blank" rel="noopener">Weblogic Tutorials</a></li>
<li><a title="Oracle Goldengate Training In Hyderabad" href="oracle-goldengate-training/" target="_blank" rel="noopener">Oracle Goldengate Training In Hyderabad</a></li>
<li><a title="Oracle Weblogic Server Installation" href="weblogic-server-installation/" target="_blank" rel="noopener">Oracle Weblogic Server Installation</a> &nbsp;</li>
</ul>e:Ta244,<p>At the end of this chapter you will be able to:</p>
<ul>
<li><strong>Overview</strong></li>
<li><strong>Tune the Operating System</strong></li>
<li><strong>Optimize Your Database</strong></li>
<li><strong>Tune WebLogic Server Performance Parameters</strong></li>
<li><strong>Tuning the Application</strong></li>
<li><strong>Tuning Java Virtual Machines (JVMs)</strong></li>
</ul>
<h2><span style="font-size: 14pt; color: #ba372a;"><strong>Overview:</strong></span></h2>
<p>Performance tuning <a href="weblogic-server-installation" target="_blank" rel="noopener">WebLogic Server</a> and your WebLogic Server application is a complex and iterative process. These tuning techniques are applicable to nearly all WebLogic applications. Although we highly recommend performing these tasks in the sequence they are presented, this isn't a requirement. Gather information about the level of activity expected on your server, the anticipated number of users, the number of requests, acceptable response time, and an optimal hardware configuration (e.g., fast CPU, disk size vs. speed, sufficient memory, and so on.). There is no single formula for determining your hardware requirements. The process of determining what type of hardware and software configuration is required to meet application needs adequately is called <strong>capacity planning</strong>. Capacity planning requires an assessment of your system performance goals and an understanding of your application. Capacity planning for server hardware should focus on maximum performance requirements. &nbsp;</p>
<h2><span style="font-size: 14pt; color: #ba372a;">Tune the Operating System</span></h2>
<p>Each operating system sets default tuning parameters differently. For Windows platforms, the default settings are usually sufficient. However, the <a href="unixlinux" target="_blank" rel="noopener">UNIX </a>and Linux operating systems usually need to be tuned appropriately.</p>
<h2><span style="font-size: 14pt; color: #ba372a;">UNIX Tuning Parameters</span></h2>
<p>Use the following guidelines when tuning UNIX operating systems supported by WebLogic Server.</p>
<h3><span style="font-size: 12pt; color: #ba372a;">Solaris TCP Tuning Parameters</span></h3>
<p>For better TCP (transmission control protocol) socket performance, set the tcp_time_wait_interval parameter as follows: &nbsp; <strong><em>ndd -set /dev/tcp tcp_time_wait_interval 60000</em></strong> <strong><em>&nbsp;</em></strong> This parameter determines the time interval that a TCP socket is kept alive after issuing a close call. The default value of this parameter on Solaris is four minutes. When a large number of clients connect for a short amount of time, holding these socket resources can have a significant negative impact on performance. Setting this parameter to a value of 60000 (60 seconds) has shown a significant throughput enhancement when running benchmark JSP tests on Solaris. You might want to reduce this setting further if the server gets backed up with a queue of half-opened connections.</p>
<p><span style="color: #ba372a;"><strong>Note:</strong></span></p>
<p>Prior to Solaris 2.7, the tcp_time_wait_interval parameter was called tcp_close_wait_interval.</p>
<blockquote>
<p style="text-align: center;"><em>Inclined to build a profession as Weblogic Developer? Then here is the blog post on, explore <a title="Weblogic Training" href="weblogic-server-administration-training" target="_blank" rel="noopener"><span style="color: #e03e2d;"><strong>Weblogic Training</strong></span></a></em></p>
</blockquote>
<h2><span style="font-size: 14pt; color: #ba372a;">Optimize Your Database</span></h2>
<p>Your database can be a major enterprise-level bottleneck. Configure your database for optimal performance by following the tuning guidelines.</p>
<h2><span style="font-size: 14pt; color: #ba372a;">General Suggestions</span></h2>
<p>Here are some general database tuning suggestions:</p>
<ul>
<li><span style="color: #ba372a;"><strong>Good database design</strong></span> &mdash; Distribute the database workload across multiple disks to avoid or reduce disk overloading. Good design also includes proper sizing and organization of tables, indexes, logs, and so on.</li>
</ul>
<ul>
<li><span style="color: #ba372a;"><strong>Disk I/O optimization</strong></span> &mdash; Disk I/O optimization is related directly to throughput and scalability. Access to even the fastest disk is orders of magnitude slower than memory access. Whenever possible, optimize the number of disk accesses. In general, selecting a larger block/buffer size for I/O reduces the number of disk accesses and might substantially increase throughput in a heavily loaded production environment.</li>
</ul>
<ul>
<li><strong><span style="color: #ba372a;">Checkpointing</span> &mdash;</strong> This mechanism periodically flushes all dirty cache data to disk, which increases the I/O activity and system resource usage for the duration of the checkpoint. Although frequent checkpointing can increase the consistency of on-disk data, it can also slow database performance. Most database systems have the checkpointing capability, but not all database systems provide user-level controls. <a href="tutorialsoracle-application-framework-oaf-tutorials" target="_blank" rel="noopener">Oracle</a>, for example, allows administrators to set the frequency of checkpoints while users have no control over SQLServer 7.x checkpoints. For recommended settings, see the product documentation for the database you are using.</li>
</ul>
<blockquote>
<p><em>Inclined to build a profession as Weblogic Developer? Then here is the blog post on, explore <span style="color: #e03e2d;"><strong>Weblogic Training</strong></span></em></p>
</blockquote>
<h2><span style="font-size: 14pt; color: #ba372a;">Database-Specific Tuning</span></h2>
<p>Here are some basic tuning suggestions for Oracle, <a href="tutorialsmysql" target="_blank" rel="noopener">SQL </a>Server, and Sybase. Again, you should also check the tuning guidelines in your database-specific vendor documentation.</p>
<ul>
<li>When using a JDBC Connection Pool, modify the following attributes:
<ul>
<li>DriverName: Use the thin driver or jDriver.</li>
<li>InitialCapacity: Set this to equal the MaxCapacity value.</li>
<li>MaxCapacity: Set the MaxCapacity value to at least equal the Thread Count value, and then, if necessary, increase it again until you find the right number.</li>
</ul>
</li>
<li>Set the connection pool size to equal the execute queue's Thread Count.</li>
<li>Set the statement cache.</li>
</ul>
<p>Establishing a JDBC connection with a DBMS can be very slow. If your application requires database connections that are repeatedly opened and closed, this can become a significant performance issue. WebLogic connection pools offer an efficient solution to the problem. When WebLogic Server starts, connections from the connection pools are opened and are available to all clients. When a client closes a connection from a connection pool, the connection is returned to the pool and becomes available for other clients; the connection itself is not closed. There is little cost to opening and closing pool connections. How many connections should you create in the pool? A connection pool can grow and shrink according to configured parameters, between a minimum and a maximum number of connections. The best performance occurs when the connection pool has as many connections as there are concurrent client sessions.</p>
<h2><span style="font-size: 14pt; color: #ba372a;">Tuning JDBC Connection Pool Initial Capacity</span></h2>
<p>The initial capacity attribute of the JDBCConnectionPool element enables you to set the number of physical database connections to create when configuring the pool. If the server cannot create this number of connections, the creation of this connection pool will fail. During development, it may be convenient to set the value of the InitialCapacity attribute to a low number to help the server startup faster. In production systems, consider setting the InitialCapacity value equal to the MaxCapacity attribute's default production mode setting of 25. This way, all database connections are acquired during server start-up. And if you need to tune the MaxCapacity value, make sure to set the InitialCapacity so that it equals the MaxCapacity value. If InitialCapacity is less than MaxCapacity, the server needs to create additional database connections when its load is increased. When the server is under load, all resources should be working to complete requests as fast as possible, rather than creating new database connections.</p>
<h2><span style="font-size: 14pt; color: #ba372a;">Tuning JDBC Connection Pool Maximum Capacity</span></h2>
<p>The max capacity attribute of the JDBCConnectionPool element allows you to set the maximum number of physical database connections that a connection pool can contain. Different JDBC drivers and database servers might limit the number of possible physical connections. The default settings for development and production mode are equal to the default number of executing threads: 15 for development mode; 25 for production mode. However, in production, it is advisable that the number of connections in the pool equal the number of concurrent client sessions that require JDBC connections. The pool capacity is independent of the number of executing threads in the server. There may be many more ongoing user sessions than there are execute threads.</p>
<h2><span style="font-size: 14pt; color: #ba372a;">Caching Prepared and Callable Statements</span></h2>
<p>When you use a prepared statement or callable statement in an application or EJB, there is considerable processing overhead for the communication between the application server and the database server and on the database server itself. To minimize the processing costs, WebLogic Server can cache prepared and callable statements used in your applications. When an application or EJB calls any of the statements stored in the cache, WebLogic Server reuses the statement stored in the cache. Reusing prepared and callable statements reduce CPU usage on the database server, improving performance for the current statement and leaving CPU cycles for other tasks. Using the statement cache can dramatically increase performance, but you must consider its limitations before you decide to use it.</p>
<h2><span style="font-size: 14pt; color: #ba372a;">Tune WebLogic Server Performance Parameters</span></h2>
<p>The WebLogic Server configuration file (config.xml) contains a number of OOTB (out-of-the-box) performance-related parameters that can be fine-tuned depending on your environment and applications. Tuning these parameters based on your system requirements (rather than running with default settings) can greatly improve both single-node performance and the scalability characteristics of an application. Try experimenting with the following WebLogic Server configuration tuning parameters to determine your system's "sweet spot" for optimal performance:</p>
<ul>
<li>Modify the value of <strong>the execute queue's Thread Count</strong>.</li>
<li>If possible, use native performance packs (NativeIOEnabled=true).</li>
<li>Use application-specific execute queues.</li>
<li>Use multiple execute queues for servlets and JSPs.</li>
<li>Consider switching the default Java compiler for JSP compilation, javac, which is significantly slower than jikes or sj.</li>
</ul>
<h2><span style="font-size: 14pt; color: #ba372a;">Monitor Disk and CPU Utilization</span></h2>
<p>After following the previous steps, run your application under a high load while monitoring the:</p>
<ul>
<li>Application server (disk and CPU utilization)</li>
<li>Database server (disk and CPU utilization)</li>
</ul>
<p>To check your disk utilization on Solaris or Linux, use the <strong><em>iostat -D &lt;</em></strong><em><strong>interval</strong></em><strong><em>&gt;</em></strong> command, where the <em>interval</em> value determines how many seconds you want to elapse between monitoring cycles. To check your CPU utilization, simply leave off the -D flag (iostat &lt;<em>interval</em>&gt;). For Windows, use the Performance Monitor tool (perfmon), to monitor both your disk and CPU utilization. The goal is to get to a point where the application server becomes 100 percent utilized. If you find that the application server CPU is not close to 100 percent, confirm whether the database is bottlenecked. If the database CPU is 100 percent utilized, then check your application SQL calls query plans. For example, are your <a href="sql-dba-tutorials" target="_blank" rel="noopener">SQL</a> calls using indexes or doing linear searches? Also, confirm whether there is too many ORDER BY clauses used in your application that are affecting the database CPU.</p>
<h2><span style="font-size: 14pt; color: #ba372a;">Monitor Data Transfers across the Network</span></h2>
<p>Check the amount of data transferred between the application and the application server, and between the application server and the database server. This amount should not exceed your network bandwidth; otherwise, your network becomes the bottleneck. To verify this, monitor the network statistics for retransmission and duplicate packets. This can be done using the following command: <em>netstat -s -P tcp</em> &nbsp;</p>
<h2><span style="font-size: 14pt; color: #ba372a;">Locate Bottlenecks in Your Applications</span></h2>
<p>If you determine that neither the network nor the database server is the bottleneck, start looking at your WebLogic Server applications. Most importantly, is the machine running WebLogic Server able to get 100 percent CPU utilization with a high client load? If the answer is <em>no</em>, then check if there is any locking taking place in the application. You should profile your application using a commercially available tool (for example, JProbe or OptimizeIt) to pinpoint bottlenecks and improve application performance.</p>
<h2><span style="font-size: 14pt; color: #ba372a;">Tuning the Application</span></h2>
<p>This section contains recommended application-specific tuning suggestions for performance improvement.</p>
<h2><span style="font-size: 14pt; color: #ba372a;"><em>&nbsp;</em><em>EJBs</em></span></h2>
<ul>
<li>Stateless session beans and MDBs (message-driven beans) &mdash; For maximum concurrency, the pool sizes should be at least as large as the thread count of the execute queue that handles requests to such beans.</li>
<li>Use the concurrency strategy.</li>
<li>Experiment with EJB pool settings.</li>
<li>Use Call-by-reference.</li>
<li>Cache EJBs.</li>
<li>Increase the MDB pool size for asynchronous message consumption.</li>
<li>Disable checks for JSP page checks and servlet reloading.</li>
<li>Use in-memory session persistence</li>
<li>Precompile JSPs</li>
<li>Avoid JMS message selectors and use multiple queues/topics to do message selection.</li>
<li>Use asynchronous (onMessage) JMS consumers instead of synchronous receivers.</li>
<li>Defer JMS acknowledgments and commits.</li>
<li>Tune your JDBC connection pool's Initial Capacity and Max Capacity settings to complete database requests as fast as possible, rather than creating new connections.</li>
<li>Cache prepared and callable statements used in your applications to minimize processing costs.</li>
<li>Make your transactions single-batch by collecting a set of data operations and submitting an update transaction in one statement in the form.</li>
</ul>
<h3><span style="font-size: 12pt; color: #ba372a;"><em>&nbsp;</em><em>JSPs and Servlets</em></span></h3>
<h3><span style="font-size: 12pt; color: #ba372a;"><em>JMS, </em></span><span style="font-size: 12pt; color: #ba372a;"><em>JDBC</em></span></h3>
<h2><span style="font-size: 14pt; color: #ba372a;">Tuning Java Virtual Machines (JVMs)</span></h2>
<p>The Java virtual machine (JVM) is a virtual "execution engine" instance that executes the byte codes in Java class files on a microprocessor. How you tune your JVM affects the performance of WebLogic Server and your applications. &nbsp;</p>
<h3><span style="font-size: 12pt; color: #ba372a;">Identify the Best JVM Settings</span></h3>
<p>Tune your JVM's heap garbage collection and heap size parameters to get the best performance out of your JVM. The Sun HotSpot and WebLogic JRockit JVM parameters that most significantly affect performance are listed below.</p>
<h2><span style="font-size: 14pt; color: #ba372a;">Sun JDK</span></h2>
<p>When using the HotSpot VM option (-server or -client), experiment with the following garbage collection parameters:</p>
<ul>
<li><em>-Xms</em><em> and </em><em>-Xmx</em><em> (use equal settings at startup) </em></li>
<li><em>-XX:NewSize</em><em> and </em><em>-XX:MaxNewSize</em></li>
<li><em>-XX: SurvivorRatio</em></li>
<li><em>-XX:+UseISM</em> <em>-XX:+AggressiveHeap</em></li>
</ul>
<h2><span style="font-size: 14pt; color: #ba372a;">JRockit JDK</span></h2>
<p>When using JRockit's JVM, experiment with the following garbage collection parameters:</p>
<ul>
<li>-Xms and -Xmx (use equal settings at startup)</li>
<li>-Xns</li>
<li>-Xgc: parallel</li>
<li>-XXenablefatspin</li>
</ul>
<p>The following sections discuss JVM tuning options for WebLogic Server:</p>
<h3><span style="font-size: 12pt; color: #ba372a;">Which JVM for Your System?</span></h3>
<p>Although this section focuses on Sun Microsystems' J2SE 1.4 JVM for the Windows, UNIX, and Linux platforms, the BEA WebLogic JRockit JVM was developed expressly for server-side applications and optimized for Intel architectures to ensure reliability, scalability, manageability, and flexibility for Java applications.</p>
<h3><span style="font-size: 12pt; color: #ba372a;">JVM Heap Size and Garbage Collection</span></h3>
<p>Garbage collection is the JVM's process of freeing up unused Java objects in the Java heap. The Java heap is where the objects of a Java program live. It is a repository for live objects, dead objects, and free memory. When an object can no longer be reached from any pointer in the running program, it is considered "garbage" and ready for collection. The JVM heap size determines how often and how long the VM spends collecting garbage. An acceptable rate for garbage collection is application-specific and should be adjusted after analyzing the actual time and frequency of garbage collections. If you set a large heap size, full garbage collection is slower, but it occurs less frequently. If you set your heap size in accordance with your memory needs, full garbage collection is faster but occurs more frequently. The goal of tuning your heap size is to minimize the time that your JVM spends doing garbage collection while maximizing the number of clients that WebLogic Server can handle at a given time. To ensure maximum performance during benchmarking, you might set high heap size values to ensure that garbage collection does not occur during the entire run of the benchmark. You might see the following Java error if you are running out of heap space: java.lang.OutOfMemoryError &lt;&lt;no stack trace available&gt;&gt; java.lang.OutOfMemoryError &lt;&lt;no stack trace available&gt;&gt; Exception in thread "main"</p>
<h3><span style="font-size: 12pt; color: #ba372a;">Using Verbose Garbage Collection to Determine Heap Size</span></h3>
<p>The HotSpot VM's verbose garbage collection option (verbosegc) enables you to measure exactly how much time and resources are put into garbage collection. To determine the most effective heap size, turn on verbose garbage collection and redirect the output to a log file for diagnostic purposes. The following steps outline this procedure:</p>
<ul>
<li>Monitor the performance of WebLogic Server under maximum load while running your application.</li>
</ul>
<ul>
<li>Use the -verbosegc option to turn on verbose garbage collection output for your JVM and redirect <em>both</em> the standard error and standard output to a log file.</li>
</ul>
<p>This place thread dump information in the proper context with WebLogic Server informational and error messages, and provides a more useful log for diagnostic purposes. For example, on Windows and Solaris, enter the following: <em>% java -ms32m -mx200m -verbosegc -classpath $CLASSPATH</em><em> </em><em>-Dweblogic.Name=%SERVER_NAME% -Dbea.home="C:bea"</em><em> </em><em>-Dweblogic.management.username=%WLS_USER%</em><em> </em><em>-Dweblogic.management.password=%WLS_PW%</em><em> </em><em>-Dweblogic.management.server=%ADMIN_URL%</em><em> </em><em>-Dweblogic.ProductionModeEnabled=%STARTMODE%</em><em> </em><em>-Djava.security.policy="%WL_HOME%serverlibweblogic.policy" weblogic.Server</em><em> </em><em>&gt;&gt; logfile.txt 2&gt;&amp;1</em> Where the logfile.txt 2&gt;&amp;1 command redirects both the standard error and standard output to a log file. On HPUX, use the following option to redirect stderr stdout to a single file: <em>-Xverbosegc:file=/tmp/gc$$.out</em> where $$ maps to the process ID (PID) of the Java process. Because the output includes timestamps for when garbage collection ran, you can infer how often garbage collection occurs.</p>
<ul>
<li>Analyze the following data points:</li>
</ul>
<p>1. How often is garbage collection taking place? In the log file, compare the timestamps around the garbage collection.</p>
<p>2. How long is garbage collection taking? Full garbage collection should not take longer than 3 to 5 seconds.</p>
<p>3. What is your average memory footprint? In other words, what does the heap settle back down to after each full garbage collection? If the heap always settles to 85 percent free, you might set the heap size smaller.</p>
<ul>
<li>If you are using 1.4 Java HotSpot JVM, set the New generation heap sizes.</li>
</ul>
<ul>
<li>Make sure that the heap size is not larger than the available free RAM on your system.</li>
</ul>
<p>Use as large a heap size as possible without causing your system to "swap" pages to disk. The amount of free RAM on your system depends on your hardware configuration and the memory requirements of running processes on your machine. See your system administrator for help in determining the amount of free RAM on your system.</p>
<ul>
<li>If you find that your system is spending too much time collecting garbage (your allocated "virtual" memory is more than your RAM can handle), lower your heap size.</li>
</ul>
<p>Typically, you should use 80 percent of the available RAM (not taken by the operating system or other processes) for your JVM.</p>
<ul>
<li>If you find that you have a large amount of available free RAM remaining, run more instances of WebLogic Server on your machine.</li>
</ul>
<p>Remember, the goal of tuning your heap size is to minimize the time that your JVM spends doing garbage collection while maximizing the number of clients that WebLogic Server can handle at a given time.</p>
<h2><span style="font-size: 14pt; color: #ba372a;">Specifying Heap Size Values</span></h2>
<p>You must specify Java heap size values each time you start an instance of WebLogic Server. This can be done either from the java command line or by modifying the default values in the sample startup scripts that are provided with the WebLogic distribution for starting WebLogic Server. For example, when you start a WebLogic Server instance from a java command line, you could specify the HotSpot VM heap size values as follows: <em>$ java -XX: NewSize=128m -XX: MaxNewSize=128m -XX: SurvivorRatio=8 -Xms512m -Xmx512m</em> The default size for these values is measured in bytes. Append the letter `k' or `K' to the value to indicate kilobytes, `m' or `M' to indicate megabytes, and `g' or `G' to indicate gigabytes. The example above allocates 128 megabytes of memory to the New generation and maximum New generation heap sizes, and 512 megabytes of memory to the minimum and maximum heap sizes for the WebLogic Server instance running in the JVM.</p>
<h3><span style="font-size: 12pt; color: #ba372a;"><em>Using WebLogic Startup Scripts to Set Heap Size</em></span></h3>
<p>Sample startup scripts are provided with the WebLogic Server distribution for starting the server and for setting the environment to build and run the server:</p>
<ul>
<li>startWLS.cmd and setEnv.cmd (Windows).</li>
<li>startWLS.sh and setEnv.sh (UNIX and Windows. On Windows, these scripts support the MKS and Cygnus BASH UNIX shell emulators.)</li>
</ul>
<h2><span style="font-size: 14pt; color: #ba372a;"><em>Java Heap Size Options</em></span></h2>
<p>You achieve the best performance by individually tuning each application. However, configuring the Java HotSpot VM heap size options listed in the table when starting WebLogic Server increases performance for most applications. These options may differ depending on your architecture and operating system. See your vendor's documentation for platform-specific JVM tuning options. &nbsp;</p>
<table>
<tbody>
<tr>
<td>Table 3-2 Java Heap Size Options Task</td>
<td>Option</td>
<td>Recommended Value</td>
</tr>
<tr>
<td>Setting the New generation heap size</td>
<td>-XX:NewSize</td>
<td>Set this value to a multiple of 1024 that is greater than 1MB. As a general rule, set -XX: NewSize to be one-fourth the size of the maximum heap size. Increase the value of this option for larger numbers of short-lived objects. Be sure to increase the New generation as you increase the number of processors. Memory allocation can be parallel, but garbage collection is not parallel.</td>
</tr>
<tr>
<td>Setting the maximum New generation heap size</td>
<td>-XX:MaxNewSize</td>
<td>Set this value to a multiple of 1024 that is greater than 1MB.</td>
</tr>
<tr>
<td>Setting New heap size ratios</td>
<td>-XX: SurvivorRatio</td>
<td>The New generation area is divided into three sub-areas: Eden, and two survivor spaces that are equal in size. Configure the ratio of the Eden/survivor space size. Try setting this value to 8, and then monitor your garbage collection.</td>
</tr>
<tr>
<td>Setting minimum heap size</td>
<td>-Xms</td>
<td>Set the minimum size of the memory allocation pool. Set this value to a multiple of 1024 that is greater than 1MB. As a general rule, set minimum heap size (-Xms) equal to the maximum heap size (-Xmx) to minimize garbage collections.</td>
</tr>
<tr>
<td>Setting maximum heap size</td>
<td>-Xmx</td>
<td>Set the maximum size of the memory allocation pool. Set this value to a multiple of 1024 that is greater than 1MB.</td>
</tr>
</tbody>
</table>
<p>&nbsp;WebLogic Server enables you to <strong>automatically log low memory conditions</strong> observed by the server.</p>
<p>You configure the low memory detection process using the Administration Console:</p>
<ul>
<li>Access the Administration Console for the domain, expand the Servers node in the navigation tree to display the servers configured in your domain.</li>
<li>Click the name of the server instance that you want to configure. Note that you configure low memory detection on a per-server basis.</li>
<li>Select the Configuration &mdash;&gt; Tuning tab in the right pane.</li>
<li>On the Advanced Options bar, click Show to display additional attributes.</li>
<li>Modify the following Memory Option attributes as necessary</li>
<li>Low Memory GCThreshold</li>
<li>Low Memory Sample Size</li>
<li>Low Memory Time Interval</li>
<li>And reboot the server to use the new low memory detection attributes.</li>
</ul>
<h3><span style="font-size: 12pt; color: #ba372a;"><strong>Tuning WebLogic Server</strong></span></h3>
<h2><span style="font-size: 14pt; color: #ba372a;">Development vs. Production Mode Default Tuning Values</span></h2>
<p>You can indicate whether a domain is to be used in a development environment or a production environment. WebLogic Server uses different default values for various services depending on the type of environment you specify. &nbsp;</p>
<table>
<tbody>
<tr>
<td>Tuning Parameter</td>
<td>Development Mode Default</td>
<td>Production Mode Default</td>
</tr>
<tr>
<td>Execute Queue: ThreadCount</td>
<td>15 threads</td>
<td>25 threads</td>
</tr>
<tr>
<td>JDBC Connection Pool: MaxCapacity</td>
<td>15 connections</td>
<td>25 connections</td>
</tr>
</tbody>
</table>
<h2><span style="font-size: 14pt; color: #ba372a;">Using WebLogic Server "Native IO" Performance Packs</span></h2>
<p>Benchmarks show major performance improvements when you use native performance packs on machines that host WebLogic Server instances. Performance packs use a platform-optimized, native socket multiplexor to improve server performance. For example, the native socket reader multiplexor threads have their own execute queue and do not borrow threads from the default execute queue, which frees up default execute threads to do application work. However, if you must use the pure-Java socket reader implementation for host machines, you can still improve the performance of socket communication by configuring the proper number of socket reader threads for each server instance and the client machine.</p>
<h2><span style="font-size: 14pt; color: #ba372a;">Tuning the Default Execute Queue Threads</span></h2>
<p>The value of the ThreadCount attribute of an ExecuteQueue element in the config.xml file equals the number of simultaneous operations that can be performed by applications that use the execute queue. As work enters an instance of WebLogic Server, it is placed in an execute queue. This work is then assigned to a thread that does the work on it. Threads consume resources, so handle this attribute with care&mdash;you can degrade performance by increasing the value unnecessarily. By default, a new WebLogic Server instance is configured with a development mode execute queue, weblogic.kernel.default, that contains 15 threads. In addition, WebLogic Server provides two other pre-configured queues:</p>
<ul>
<li>weblogic.admin.HTTP&mdash;Available only on Administration Servers, this queue is reserved for communicating with the Administration Console; you cannot reconfigure it.</li>
<li>weblogic.admin.RMI&mdash;Both Administration Servers and Managed Servers have this queue; it is reserved for administrative traffic; you cannot reconfigure it.</li>
</ul>
<p>Unless you configure additional execute queues, and assign applications to them, Web applications and RMI objects use weblogic.kernel.default.</p>
<p><span style="color: #ba372a;"><strong>Note: </strong></span>If native performance packs are not being used for your platform, you may need to tune the default number of executing queue threads <em>and</em> the percentage of threads that act as socket readers to achieve optimal performance.</p>
<h3><span style="font-size: 12pt; color: #ba372a;">Should You Modify the Default Thread Count?</span></h3>
<p>Adding more threads to the default execute queue does not necessarily imply that you can process more work. Even if you add more threads, you are still limited by the power of your processor. Because threads consume memory, you can degrade performance by increasing the value of the ThreadCount attribute unnecessarily. A high execute thread count causes more memory to be used and increases context switching, which can degrade performance. The value of the ThreadCount attribute depends very much on the type of work your application does. For example, if your client application is thin and does a lot of its work through remote invocation, that client application will spend more time connected &mdash; and thus will require a higher thread count &mdash; than a client application that does a lot of client-side processing. If you do not need to use more than 15 threads (the development default) or 25 threads (the production default) for your work, do not change the value of this attribute. As a general rule, if your application makes database calls that take a long time to return, you will need more execute threads than an application that makes calls that are short and turn over very rapidly. For the latter case, using a smaller number of executing threads could improve performance.</p>
<h3><span style="font-size: 12pt; color: #ba372a;">Creating Execute Queues</span></h3>
<p>An execute queue represents a named collection of execute threads that are available to one or more designated servlets, JSPs, EJBs, or RMI objects. An execute queue is represented in the domain config.xml file as part of the Server element. For example, an execute queue named CriticalAppQueue with four execute threads appears in the config.xml file as follows: ... &lt;Server Name="examplesServer" ListenPort="7001" NativeIOEnabled="true"/&gt; &lt;ExecuteQueue Name="default" ThreadCount="15"/&gt; &lt;ExecuteQueue Name="CriticalAppQueue" ThreadCount="4"/&gt; ... &lt;/Server&gt;</p>
<h2><span style="font-size: 14pt; color: #ba372a;">Assigning Servlets and JSPs to Execute Queues</span></h2>
<p>You can assign a servlet or JSP to a configured execute queue by identifying the execute queue name in the initialization parameters. Initialization parameters appear within the init-param element of the servlet's or JSP's deployment descriptor file, web.xml. To assign an execute queue, enter the queue name as the value of the wl-dispatch-policy parameter, as in the example:</p>
<p>&lt;servlet&gt;</p>
<p>&lt;servlet-name&gt;MainServlet&lt;/servlet-name&gt;</p>
<p>&lt;jsp-file&gt;/myapplication/critical.jsp&lt;/jsp-file&gt;</p>
<p>&lt;init-param&gt;</p>
<p>&lt;param-name&gt;wl-dispatch-policy&lt;/param-name&gt;</p>
<p>&lt;param-value&gt;CriticalAppQueue&lt;/param-value&gt;</p>
<p>&lt;/init-param&gt;</p>
<p>&lt;/servlet&gt;&nbsp;<strong><em>Assigning EJBs and RMI Objects to Execute Queues</em></strong></p>
<p>To assign an EJB object to a configured execute queue, use the new dispatch-policy element in Weblogic-ejb-jar.xml.</p>
<h3><span style="font-size: 12pt; color: #ba372a;">Scenarios for Modifying the Default Thread Count</span></h3>
<p>To determine the ideal thread count for an execute queue, monitor the queue's throughput while all applications in the queue are operating at maximum load. Increase the number of threads in the queue and repeat the load test until you reach the optimal throughput for the queue. (At some point, increasing the number of threads will lead to enough contexts switching that the throughput for the queue begins to decrease.)</p>
<h3><span style="font-size: 12pt; color: #ba372a;">Assigning Applications to Execute Queues</span></h3>
<p>Although you can configure the default execute queue to supply the optimal number of threads for all WebLogic Server applications, configuring multiple execute queues can provide additional control for key applications. By using multiple execute queues, you can guarantee that selected applications have access to a fixed number of executing threads, regardless of the load on WebLogic Server.</p>
<h3><span style="font-size: 12pt; color: #ba372a;">Allocating Execute Threads to Act as Socket Readers</span></h3>
<p>For best socket performance, BEA recommends that you use the native socket reader implementation, rather than the pure-Java implementation, on machines that host WebLogic Server instances. However, if you must use the pure-Java socket reader implementation for host machines, you can still improve the performance of socket communication by configuring the proper number of executing threads to act as socket reader threads for each server instance and the client machine. The ThreadPoolPercentSocketReaders attribute sets the maximum percentage of executing threads that are set to read messages from a socket. The optimal value for this attribute is application-specific. The default value is 33, and the valid range is 1-99. Allocating execute threads to act as socket reader threads increase the speed and the ability of the server to accept client requests. It is essential to balance the number of executing threads that are devoted to reading messages from a socket and those threads that perform the actual execution of tasks in the server.</p>
<h3><span style="font-size: 12pt; color: #ba372a;">Tuning the Execute Thread Detection Behavior</span></h3>
<p>WebLogic Server automatically detects when a thread in an execute queue becomes "stuck." Because a stuck thread cannot complete its current work or accept new work, the server logs a message each time it diagnoses a stuck thread. If all threads in an execute queue become stuck, the server changes its health state to either "warning" or "critical" depending on the execute queue:</p>
<ul>
<li>If all threads in the default queue become stuck, the server changes its health state to "critical." (You can set up the Node Manager application to automatically shut down and restart servers in the critical health state.)</li>
</ul>
<ul>
<li>If all threads in the admin.HTTP, weblogic.admin.RMI or a user-defined execute queue become stuck, the server changes its health state to "warning."</li>
</ul>
<p>WebLogic Server diagnoses a thread as stuck if it is continually working (not idle) for a set period of time. You can tune a server's thread detection behavior by changing the length of time before a thread is diagnosed as stuck, and by changing the frequency with which the server checks for stuck threads.</p>
<ol>
<li style="list-style-type: none;">
<ul>
<li>Stuck Thread Max Time: The number of seconds, that a thread must be continually working before this server diagnoses the thread as being stuck. By default, WebLogic Server considers a thread to be "stuck" after 600 seconds of continuous use.</li>
</ul>
</li>
</ol>
<ol>
<li style="list-style-type: none;">
<ul>
<li>Stuck Thread Timer Interval: The number of seconds, after which WebLogic Server periodically scans threads to see if they have been continually working for the length of time specified by Stuck Thread Max Time. By default, WebLogic Server sets this interval to 600 seconds.</li>
</ul>
</li>
</ol>
<h2><span style="font-size: 14pt; color: #ba372a;"><strong>&nbsp;</strong><strong>Tuning EJBs</strong> &nbsp;</span></h2>
<h3><span style="font-size: 12pt; color: #ba372a;">Using a Free Pool to Improve Stateless Session Bean Performance</span></h3>
<p>WebLogic Server uses a <em>free pool</em> to improve performance and throughput for stateless session EJBs. The free pool stores <em>unbound</em> stateless session EJBs. Unbound EJB instances are instances of a stateless session EJB class that are not processing a method call. The following figure illustrates the WebLogic Server free pool, and the processes by which stateless EJBs enter and leave the pool. Dotted lines indicate the "state" of the EJB from the perspective of WebLogic Server. &nbsp;</p>
<p>&nbsp;</p>
<p>WebLogic Server free pool showing stateless session EJB life cycle</p>
<p><img class="alignnone size-full wp-image-2690" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1015.png" alt="EJB life cycle" width="385" height="197" /> &nbsp;</p>
<h2><span style="font-size: 14pt; color: #ba372a;">Allocating Pool Size for Entity Beans</span></h2>
<p>A pool of anonymous entity beans (that is., beans without a primary key class) used to invoke finders and home methods and to create other entity beans. The max-beans-in-free-pool element also controls the size of this pool. If you are running many finders or home methods or creating many beans, you may want to tune the max-beans-in-free-pool element so that there are enough beans available for use in the pool.</p>
<h2><span style="font-size: 14pt; color: #ba372a;">Tuning Pool Size for Stateless Sessions Beans at Startup</span></h2>
<p>Use the initial-beans-in-free-pool element of the weblogic-ejb-jar.xml file to specify the number of stateless session bean instances in the free pool at startup. If you specify a value for initial-beans-in-free-pool, WebLogic Server populates the free pool with the specified number of bean instances at startup. Populating the free pool in this way improves initial response time for the EJB because initial requests for the bean can be satisfied without generating a new instance. initial-beans-in-free-pool defaults to 0 if the element is not defined.</p>
<h2><span style="font-size: 14pt; color: #ba372a;">Setting Caching Size for Stateful Session and Entity Beans</span></h2>
<p>You can configure the number of active bean instances that are present in the EJB cache (the in-memory space where beans exist). Use the max-beans-in-cache element of the weblogic-ejb-jar.xml file to specify the maximum number of objects of this bean class that are allowed in memory. When max-beans-in-cache is reached, WebLogic Server passivates some EJBs that have not been recently used by a client. The max-beans-in-cache element also affects when EJBs are removed from the WebLogic Server cache.</p>
<h2><span style="font-size: 14pt; color: #ba372a;"><strong>Check out our Related Courses</strong></span></h2>
<ul>
<li><a title="Weblogic Tutorials" href="tutorialsweblogic-tutorials-how-to" target="_blank" rel="noopener">Weblogic Tutorials</a></li>
<li><a title="Introduction to Clustering Weblogic" href="introduction-clustering-weblogic/" target="_blank" rel="noopener">Introduction to Clustering Weblogic</a></li>
<li><a title="WebLogic Server Admin Training in Dallas" href="weblogic-server-administration-training/" target="_blank" rel="noopener">WebLogic Server Admin Training in Dallas</a></li>
<li><a title="Oracle Weblogic Server Installation" href="weblogic-server-installation/" target="_blank" rel="noopener">Oracle Weblogic Server Installation</a></li>
</ul>f:T6813,<p>&nbsp;</p>
<p>At the end of this chapter you will be able to:</p>
<ul>
<li><strong>Describe WLS security architecture</strong></li>
<li><strong>Configure users, groups, and roles</strong></li>
<li><strong>Configure security realms</strong></li>
<li><strong>Secure Web Applications with declarative security</strong></li>
<li><strong>Configure policies and SSL</strong></li>
<li><strong>Create and manage certificates</strong></li>
<li><strong>Protect WLS against several types of attacks</strong></li>
</ul>
<p><strong>&nbsp;</strong> <strong>WLS Security Architecture Overview</strong> <strong>Architecture Goals</strong></p>
<ul>
<li>Using Java standards (where applicable) create an architecture that unifies security enforcement and present it as a service to other components.</li>
<li>Provide a security framework that allows integration of 3rd party security products with minimum restrictions on functionality.</li>
<li>Provide consistent and unified protection for all resources hosted on WebLogic Server:</li>
</ul>
<p>&ndash; EJBs &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &ndash; Web Services</p>
<p>&ndash; Web Applications&nbsp;&nbsp;&nbsp; &ndash; Miscellaneous J2EE Resources</p>
<p>(Servlets, JSP)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; (RMI objects JDBC, JNDI,&nbsp; MBeans)</p>
<p>&nbsp;</p>
<p><strong>Security Architecture</strong> &nbsp;</p>
<p><img class="alignnone wp-image-2633" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/796-460x251.png" alt="79" width="438" height="238" /> &nbsp;</p>
<p>&nbsp;</p>
<p><strong>Process Architecture</strong></p>
<p><img class="alignnone wp-image-2634" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/805-460x205.png" alt="80" width="442" height="196" /> &nbsp;</p>
<p>&nbsp;</p>
<p><strong>Security Services</strong></p>
<p><img class="alignnone wp-image-2635" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/819-460x339.png" alt="81" width="426" height="314" /></p>
<p>&nbsp;</p>
<p><strong>Authentication Providers</strong> &nbsp;</p>
<ul>
<li>An authentication provider uses LoginModules to authenticate users within a security realm.</li>
<li>An authentication provider transports identity information and makes it available to components with Subjects.</li>
<li>The Principal Validation provider provides additional protection by signing and verifying the authenticity of the principals.</li>
<li>Identity Assertion providers as a LoginModule to map a valid token to a WebLogic server user.</li>
</ul>
<p>&nbsp; <strong>Authorization Providers</strong></p>
<ul>
<li>An authentication provider is a process to control the interactions between users and resources based on user identity.</li>
<li>The role mapping provider supplies the security role with information to determine whether access is allowed for role-based resources, such as EJBs.</li>
<li>The access decision component answers the question, is access allowed?</li>
<li>The access decision returns a result of PERMIT, DENY or ABSTAIN.</li>
<li>The adjudication provider can be used to tally the results that multiple access decisions return to determine the final decision.</li>
</ul>
<p>&nbsp; <strong>Confidentiality</strong></p>
<ul>
<li>WebLogic Server supports the Secure Sockets Layer (SSL) protocol to secure the communication between clients and server.</li>
<li>SSL client authentication allows a server to confirm a user&rsquo;s identity by checking that a client&rsquo;s certificate and public ID are valid and are issued by a certificate authority (CA).</li>
<li>SSL server authentication allows a user to confirm a server&rsquo;s identity by checking that the server&rsquo;s certificate and public ID are valid and are issued by a CA</li>
</ul>
<pre style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace; font-size: 13px; margin-top: 0px; margin-bottom: 10px; overflow: auto; color: #212529; padding: 8px; word-break: break-all; overflow-wrap: break-word; background-color: #f5f5f5; border: 1px solid #cccccc; border-radius: 4px; text-align: center;"><em style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: bolder;">Interested in mastering Weblogic Training? Enroll now for FREE demo <br style="box-sizing: border-box;" />on <a style="box-sizing: border-box; color: #007bff; text-decoration-line: none; background-color: transparent; transition: all 0.2s linear 0s;" href="weblogic-server-administration-training" target="_blank" rel="noopener">Weblogic Training</a>.</span></em></pre>
<p>&nbsp; <strong>Credential Mapping</strong></p>
<ul>
<li>The credential mapping process is initiated when application components must access a legacy system authentication mechanism to obtain a set of credentials.</li>
<li>The requesting application passes the Subject as part of the call and information about the type of credentials required.</li>
<li>Credentials are returned to the security framework which is then passed to the requesting application component.</li>
<li>The application component uses the credentials to access the external system.</li>
</ul>
<p>&nbsp; <strong>Auditing</strong></p>
<ul>
<li>Auditing provides a trail of activity.</li>
<li>The Auditing provider is used to log activity before and after security operations.</li>
<li>The default auditing provider records the event data associated with the security requests and the outcome of the requests.</li>
</ul>
<p><strong>Managing &nbsp;Users and Groups:</strong> &nbsp; <strong>Security Realms</strong></p>
<ul>
<li>A Security Realm is a collection of system resources and security service providers.</li>
<li>Only one security realm can be active at a given time.</li>
<li>A single security policy is used in any realm.</li>
<li>Users must be recognized by an authentication provider of the security realm</li>
<li>Admin tasks include creating security realms.</li>
</ul>
<p>&nbsp; <strong>What Is LDAP?</strong></p>
<ul>
<li>LDAP is:
<ul>
<li>The Lightweight Directory Access Protocol</li>
<li>Derived from X.500</li>
<li>Provides a hierarchical lookup service</li>
<li>Supports sophisticated searching</li>
<li>Can be secured via SSL</li>
</ul>
</li>
</ul>
<p><img class="alignnone wp-image-2636" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/826-460x80.png" alt="82" width="421" height="73" /> <strong>Embedded LDAP Server</strong></p>
<ul>
<li>In WLS users, groups, and authorization information is stored in an embedded LDAP server.</li>
<li>Several properties can be set to manage the LDAP server, including:
<ul>
<li>Credentials</li>
<li>Backup settings</li>
<li>Cache settings</li>
<li>Replication settings</li>
</ul>
</li>
</ul>
<p>&nbsp;</p>
<p>&nbsp; <strong>Configuring Embedded LDAP</strong></p>
<p><img class="alignnone wp-image-2637" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/836-460x302.png" alt="83" width="424" height="277" /> &nbsp;</p>
<p>&nbsp;</p>
<p><strong>Connecting an external LDAP browser</strong></p>
<p><img class="alignnone wp-image-2638" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/846-460x280.png" alt="84" width="425" height="258" /></p>
<p>&nbsp;</p>
<p><strong>Users and Groups</strong></p>
<ul>
<li>Users are entities that use WLS such as:
<ul>
<li>Application end users</li>
<li>Client applications</li>
<li>Other WebLogic Servers</li>
</ul>
</li>
<li>Groups are:
<ul>
<li>Logical sets of users</li>
<li>Are more efficient for managing a large number of users</li>
</ul>
</li>
</ul>
<p>&nbsp; &nbsp; &nbsp;</p>
<p><strong>Configuring New Users</strong></p>
<p><img class="alignnone wp-image-2639" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/855.png" alt="85" width="452" height="371" /> &nbsp;</p>
<p>&nbsp;</p>
<p><strong>Groups</strong></p>
<ul>
<li>WLS provides the flexibility to organize groups in various ways:
<ul>
<li>Groups can contain users</li>
<li>Groups can contain other groups</li>
</ul>
</li>
</ul>
<p>&nbsp; <img class="alignnone wp-image-2640" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/864.png" alt="86" width="362" height="216" /></p>
<p>&nbsp;</p>
<p><strong>Configuring New Groups</strong></p>
<p><img class="alignnone wp-image-2641" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/875.png" alt="87" width="443" height="294" /> &nbsp;</p>
<p><strong>Roles</strong></p>
<ul>
<li>A role refers to a set of users who have the same permissions.</li>
<li>A role differs from a group; a group has static membership; a role is conditional.</li>
<li>A user and group can be granted multiple roles.</li>
<li>There are two types of roles: global-scoped roles and resource-scoped roles.</li>
<li>These global roles are available by default: Admin, Operator, Deployer and Monitor.</li>
<li>Roles defined in deployment descriptors can be inherited.
<ul>
<li>Occurs at deployment time</li>
<li>Can be disabled</li>
</ul>
</li>
<li>You can manage role definitions and assignments without editing deployment descriptors or redeploying.</li>
</ul>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</p>
<p><strong>Configuring New Roles</strong></p>
<p><img class="alignnone wp-image-2642" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/885-460x269.png" alt="88" width="451" height="263" /> &nbsp;</p>
<p><strong>Migrating Security Data</strong></p>
<ul>
<li>Can export users/groups, security policies, security roles, or credential maps between security realms or domains.</li>
<li>Useful, for example, in transitioning from development to QA to production.</li>
<li>Use migration constraints (key/value pairs) to specify the export/import options.</li>
<li>Currently only supports migrating security data between WLS security providers.</li>
</ul>
<p>&nbsp; &nbsp;</p>
<p><strong>Exporting WLS Default Authenticator Provider</strong></p>
<p><img class="alignnone wp-image-2643" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/895-460x296.png" alt="89" width="478" height="308" /></p>
<p>&nbsp;</p>
<p><strong>Importing into a different domain</strong></p>
<p><img class="alignnone wp-image-2644" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/905-460x238.png" alt="90" width="476" height="246" /></p>
<p><strong>Protecting Application Resources</strong> &nbsp;</p>
<p><strong>J2EE Declarative Security</strong></p>
<ul>
<li>Declarative security:
<ul>
<li>Is a means to describe an application&rsquo;s access control in a form that is external to the application</li>
<li>Involves defining security roles and constraints on web application resources</li>
<li>Uses lazy authentication to protect application resources</li>
<li>Implemented in XML-based deployment descriptors</li>
<li>Applies to all types of application</li>
</ul>
</li>
</ul>
<p>&nbsp;</p>
<p><strong>Using Deployment Descriptors</strong> &nbsp;</p>
<ul>
<li>The security realm definition determines how the deployment descriptors will be used</li>
<li><img class="alignnone wp-image-2645" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/919-460x190.png" alt="91" width="441" height="181" /></li>
</ul>
<p>&nbsp; <strong>Protecting Web Applications with declarative security:</strong> &nbsp;</p>
<ol>
<li>Define roles that should access the protected resources</li>
<li>Determine Web Application resources that must be protected</li>
<li>Map protected resource to roles that should access them</li>
<li>Map roles to users/groups in the WLS security realm</li>
<li>Set up an authentication mechanism</li>
</ol>
<p>&nbsp; <strong>Define Security Roles</strong></p>
<ul>
<li>Define types of users that exist in your Web Application.</li>
<li>Use the web.xml deployment descriptor to define security roles.</li>
</ul>
<p><img class="alignnone wp-image-2646" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/924-460x149.png" alt="92" width="495" height="160" /> &nbsp;</p>
<p><strong>Determine Protected Resources</strong> &nbsp;</p>
<p>Web resources are defined based on URL patterns. URL patterns provide a flexible way to define a single resource or a group of resources. &nbsp; <img class="alignnone wp-image-2647" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/935-460x158.png" alt="93" width="478" height="164" /></p>
<p><strong>Map Roles to Resources&hellip;</strong></p>
<ul>
<li>Apply security constraints to specified resources in your web application.</li>
<li>Users must be authenticated when accessing resources by these URL patterns.</li>
</ul>
<p><img class="alignnone wp-image-2649" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/945-460x120.png" alt="94" width="462" height="120" /></p>
<ul>
<li>Define which role(s) may access this collection of resources.</li>
</ul>
<p><img class="alignnone wp-image-2650" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/955-460x131.png" alt="95" width="480" height="136" /></p>
<p><strong>Map Roles to Users in Realms</strong> &nbsp;</p>
<ul>
<li>Use weblogic.xml to map your web application roles to entities in the WebLogic security realm.</li>
<li>Map to Groups or individual Users.</li>
</ul>
<p><img class="alignnone wp-image-2651" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/965-460x141.png" alt="96" width="475" height="144" /></p>
<p><strong>Setup Authentication</strong></p>
<ul>
<li>Configure how a Web application determines users&rsquo; security credentials:
<ul>
<li>BASIC &ndash; web browser displays a dialog box</li>
<li>FORM &ndash; use a custom HTML form</li>
<li>CLIENT-CERT &ndash; request a client certificate</li>
</ul>
</li>
</ul>
<p><img class="alignnone wp-image-2652" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/975-460x145.png" alt="97" width="463" height="145" /> &nbsp;</p>
<p><strong>Authentication Examples</strong></p>
<p>&nbsp; <img class="alignnone wp-image-2653" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/984-460x196.png" alt="98" width="444" height="188" /> &nbsp;</p>
<p><strong>Policies and Roles</strong></p>
<ul>
<li>Security roles:
<ul>
<li>Are an abstraction of users and groups</li>
<li>Can be determined dynamically for different resources</li>
</ul>
</li>
<li>Security policies:
<ul>
<li>Are rules/conditions that users/groups must adhere to, to be granted/denied authorization</li>
<li>Implement parameterized authorization</li>
</ul>
</li>
</ul>
<p>&nbsp;</p>
<p><strong>Defining Policies and Roles for Web Resources</strong></p>
<p><img class="alignnone wp-image-2654" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/994-460x277.png" alt="99" width="448" height="269" /> &nbsp;</p>
<p>&nbsp;</p>
<p><strong>Defining Policies and Roles for Other Resources&hellip;</strong> &nbsp;</p>
<ul>
<li>You can define roles and policies on other resources, e.g. JDBC, JMS and more&hellip;.</li>
</ul>
<p><img class="alignnone wp-image-2655" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1003-460x248.png" alt="100" width="442" height="237" /> <img class="alignnone wp-image-2656" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1014-460x275.png" alt="101" width="437" height="261" /> &nbsp;</p>
<p>&nbsp;</p>
<p><strong>Protecting Communications</strong> <strong>&nbsp;</strong></p>
<p><strong>What Is SSL?</strong></p>
<ul>
<li>Secure Socket Layer (SSL) is a protocol that enables:
<ul>
<li>Connection security through encryption</li>
<li>A server to authenticate to a client</li>
<li>A client to authenticate to a server (optional)</li>
<li>Data integrity such that data that flows between a client and server is protected from tampering by a third party</li>
</ul>
</li>
</ul>
<p><img class="alignnone wp-image-2657" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1115.png" alt="111" width="222" height="186" /></p>
<p><strong>Trust and Identity</strong></p>
<ul>
<li>SSL and keystore are configured independently.</li>
</ul>
<p>&nbsp;</p>
<ul>
<li>For the purpose of backward compatibility, this release of WebLogic Server supports private keys and trusted CA certificates stored in files, or in the WebLogic Keystore provider:</li>
</ul>
<p>&nbsp; &nbsp;</p>
<ul>
<li>Identity
<ul>
<li>Private Key and Digital Certificate (can now be looked up directly from the keystore, not necessarily as a standalone file outside the keystore)</li>
</ul>
</li>
<li>Trust
<ul>
<li>Certificates of Trusted Certificate Authorities</li>
</ul>
</li>
</ul>
<p>&nbsp; <strong>Using a SSL Connection</strong></p>
<ul>
<li>SSL is used by WLS to secure HTTP and t3 communication.</li>
<li>To use SSL, clients access WLS via the https or t3s protocols.
<ul>
<li>https://localhost:7002/orderStock</li>
<li>t3s://localhost:7002/useCreditCard</li>
<li><img class="alignnone wp-image-2658" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1123-460x110.png" alt="112" width="401" height="95" /></li>
</ul>
</li>
</ul>
<p>&nbsp; <strong>Enabling Secure Communication</strong></p>
<ul>
<li>With SSL data is encrypted using a negotiated symmetric session key.</li>
<li>A public key algorithm is used to negotiate the symmetric session key.</li>
<li>In SSL digital certificates are used to provide a trusted public key.</li>
</ul>
<p>&nbsp; <strong>WebLogic Server SSL Requirements</strong></p>
<ul>
<li>To enable WebLogic Server SSL you must:
<ul>
<li>Obtain an appropriate digital certificate</li>
<li>Install the certificate</li>
<li>Configure SSL properties</li>
<li>Configure two-way authentication(if desired)</li>
<li>SSL impacts performance</li>
</ul>
</li>
</ul>
<p>&nbsp; &nbsp; <strong>The keytool Utility</strong></p>
<ul>
<li>keytool is a standard J2SE SDK utility for managing:
<ul>
<li>Generation of private keys and corresponding digital certificates</li>
<li>Keystores (databases) of private keys and associated certificates</li>
</ul>
</li>
<li>The keytool utility can display certificate and keystore contents.</li>
</ul>
<p>&nbsp;</p>
<ul>
<li>For documentation, see:
<ul>
<li>http://java.sun.com/j2se/1.5.0/docs/tooldocs/windows/keytool.html</li>
<li>http://java.sun.com/j2se/1.5.0/docs/tooldocs/solaris/keytool.html</li>
</ul>
</li>
</ul>
<p>&nbsp;</p>
<p><strong>Obtaining a Digital Certificate: </strong>keytool Examples</p>
<p><img class="alignnone wp-image-2659" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1215-460x219.png" alt="121" width="473" height="224" /></p>
<p>&nbsp;</p>
<p><strong>Configuring SSL for a WebLogic Server</strong></p>
<p><img class="alignnone wp-image-2660" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1223-460x263.png" alt="122" width="442" height="252" /> &nbsp;</p>
<p>&nbsp;</p>
<p><strong>Configuring Keystores</strong></p>
<p><img class="alignnone wp-image-2661" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1233-460x286.png" alt="123" width="481" height="298" /> &nbsp;</p>
<p><strong>Protecting Against Attacks</strong></p>
<ul>
<li>WLS can help protect applications against several attacks:
<ul>
<li>Man in the middle attacks</li>
<li>Denial of service (DoS) attacks</li>
<li>Large buffer attacks</li>
<li>Connection starvation attacks</li>
</ul>
</li>
<li>The set of slides that follow detail countermeasures WLS provides to address these attacks.</li>
</ul>
<p>&nbsp; <strong>Man in the Middle Attacks</strong></p>
<ul>
<li>In a man in the middle attack, a third party poses as a destination host intercepting messages between client and the real host.</li>
<li>Instead of issuing the real destination host&rsquo;s SSL certificate, the attacker issues his own hoping that client accepts it as being from the real destination host.</li>
</ul>
<p><img class="alignnone wp-image-2663" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1243-460x156.png" alt="124" width="466" height="157" /> &nbsp;</p>
<p><strong>Man in the Middle Countermeasures</strong></p>
<ul>
<li>Man in the Middle attacks can be resisted by using a host name verifier.</li>
<li>A Host Name Verifier validates that the host to which an SSL connection is made is the intended or authorized party.</li>
<li>WLS provides a Host Name Verifier by default.</li>
<li>A custom Host Name Verifier can be created by implementing the interface
<ul>
<li>security.SSL.HostnameVerifier</li>
</ul>
</li>
</ul>
<p>&nbsp; <strong>Denial of Service Attacks</strong></p>
<ul>
<li>DoS attacks are attempts by attackers to prevent legitimate users of a service from using that service.</li>
<li>There are three basic types of attack:
<ul>
<li>Consumption of scarce, limited, or non-renewable resources</li>
<li>Destruction or alteration of configuration information</li>
<li>Physical destruction or alteration of network components</li>
</ul>
</li>
<li>
<pre style="box-sizing: border-box; font-family: SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace; font-size: 13px; margin-top: 0px; margin-bottom: 10px; overflow: auto; color: #212529; padding: 8px; word-break: break-all; overflow-wrap: break-word; background-color: #f5f5f5; border: 1px solid #cccccc; border-radius: 4px; text-align: center;"><em><strong><a href="weblogic-interview-questions-and-answers" target="_blank" rel="noopener"><span style="color: #000000; text-align: start; white-space: normal; font-size: 10pt; font-family: Arial;" data-sheets-value="{&quot;1&quot;:2,&quot;2&quot;:&quot;WebLogic Interview Questions&quot;}" data-sheets-userformat="{&quot;2&quot;:4224,&quot;10&quot;:2,&quot;15&quot;:&quot;Arial&quot;}">WebLogic Interview Questions</span></a></strong></em></pre>
</li>
</ul>
<p>&nbsp; <strong>DoS Countermeasures</strong></p>
<ul>
<li>Harden WLS against Denial of Service attacks by:
<ul>
<li>Filtering incoming network connections</li>
<li>Configuring consumable WLS resources with appropriate threshold and quotas</li>
<li>Limiting access to configuration information and backing up configuration files</li>
<li>Preventing unauthorized access by protecting passwords against password guessing attacks</li>
</ul>
</li>
</ul>
<p>&nbsp; <strong>Filtering Network Connections</strong></p>
<ul>
<li>WLS can be configured to accept or deny network connections based on the origin of the client.</li>
<li>This feature can be used to:
<ul>
<li>Restrict the location from which connections to WLS are made</li>
<li>Restrict the type of connection made, i.e., only allow SSL connections and reject all others</li>
</ul>
</li>
<li>To filter network connections, create a class that implements the ConnectionFilter interface and install it using the Administration Console.</li>
</ul>
<p>&nbsp;</p>
<p><strong>Connection Filter</strong></p>
<p><img class="alignnone wp-image-2664" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1252-460x284.png" alt="125" width="491" height="303" /></p>
<p><strong>Consuming WLS Resources</strong></p>
<ul>
<li>Denial of Service can come from consuming server side resources used by Web Applications:</li>
<li>Intentionally generating errors that will be logged consuming disk space</li>
<li>Sending large messages, many messages, or delaying delivery of messages in an effort to cripple JMS
<ul>
<li>Disrupting network connectivity by "connection starvation"</li>
<li>Consuming system memory through "large buffer attacks"</li>
</ul>
</li>
<li>The effect of these attacks can be reduced by setting appropriate quotas and threshold values.</li>
</ul>
<p>&nbsp; <strong>Large Buffer Attacks&hellip;</strong></p>
<ul>
<li>Individuals can try and take down a Web site by sending a large buffer of data, which starves the system of memory.</li>
<li>Administrators can combat this attack by setting a threshold for incoming data.</li>
</ul>
<p><img class="alignnone wp-image-2666" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1262-460x282.png" alt="126" width="489" height="298" /> &nbsp;</p>
<p><strong>Connection Starvation&hellip;</strong></p>
<ul>
<li>Individuals can try and take down a Web site by sending small, incomplete messages that cause the server to wait.</li>
<li>Administrators can combat this attack by setting a threshold.</li>
<li>Connections time out while waiting for the remainder of the data if they have reached the threshold set by the administrator.</li>
</ul>
<p>&nbsp; <img class="alignnone wp-image-2667" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1272-460x176.png" alt="127" width="487" height="185" /></p>
<p><strong>User Lockout</strong></p>
<ul>
<li>Individuals attempt to hack into a computer using various combinations of usernames and passwords</li>
<li>Administrators can protect against this security attack by setting the lockout attributes</li>
<li>Administrator has an option to unlock a locked user through the console</li>
</ul>
<p>&nbsp;</p>
<p><strong>Configuring User Lockout</strong></p>
<p><img class="alignnone wp-image-2668" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1282-460x273.png" alt="128" width="467" height="277" /> &nbsp;</p>
<p><strong>Unlocking Users</strong></p>
<p><img class="alignnone wp-image-2669" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1292-460x185.png" alt="129" width="495" height="198" /> &nbsp;</p>
<p><strong>Summary:</strong></p>
<p>In this chapter we discussed:</p>
<ul>
<li><strong>WLS security architecture</strong></li>
<li><strong>Configuring users, groups, and roles</strong></li>
<li><strong>Configuring security realms</strong></li>
<li><strong>Securing Web Applications with declarative security</strong></li>
<li><strong>Configuring policies and SSL</strong></li>
<li><strong>Creating and managing certificates</strong></li>
<li><strong>Protecting WLS against several types of attacks</strong></li>
</ul>
<p>&nbsp; &nbsp; &nbsp; &nbsp;</p>10:T462e,<p>&nbsp;</p>
<p>At the end of this chapter you will be able to:</p>
<ul>
<li><strong>Understand how WebLogic Server JMS is implemented</strong></li>
<li><strong>Configure JMS administered objects using the administration console </strong></li>
<li><strong>Configure persistent messages</strong></li>
<li><strong>Use the WLS administration console to monitor JMS</strong></li>
</ul>
<h3><span style="font-size: 14pt; color: #e03e2d;"><strong>Message-Oriented Middleware</strong></span></h3>
<ul>
<li>Message-oriented middleware refers to an infrastructure that supports messaging.</li>
<li>Typical message-oriented middleware architectures define these elements:
<ul>
<li>Message structure</li>
<li>The way to send and receive messages</li>
<li>Scaling guidelines</li>
</ul>
</li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Point-to-Point (PTP) Queue</strong></span></h2>
<ul>
<li>Many producers can serialize messages to multiple receivers in a queue.</li>
</ul>
<p>&nbsp; <img class="alignnone wp-image-2578" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/468-460x152.png" alt="PTP Queue" width="466" height="154" /></p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Publish-Subscribe Topics</strong></span></h2>
<ul>
<li>Publishing and subscribing to a topic decouple producers from consumers.</li>
</ul>
<p><img class="alignnone wp-image-2579" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/477-460x150.png" alt="Publish subscribe" width="492" height="159" /> &nbsp;</p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>WebLogic Server JMS Features</strong></span></h2>
<ul>
<li>WebLogic Server JMS supports:
<ul>
<li>PTP and Pub/subdomains</li>
<li>Guaranteed and transactional message delivery</li>
<li>Durable subscribers</li>
<li>Distributed destinations</li>
<li>Recovery from failed servers</li>
</ul>
</li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;">&nbsp; <strong>JMS Architecture: Connecting</strong></span></h2>
<p><img class="alignnone wp-image-2580" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/486-460x180.png" alt="JMS Architecture" width="474" height="185" /> &nbsp;</p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>JMS Architecture: Sending Messages</strong> </span></h2>
<p><img class="alignnone wp-image-2581" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/496-460x191.png" alt="JMS Architecture" width="479" height="198" /> &nbsp;</p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Transacted Messaging</strong></span></h2>
<ul>
<li>A JMS client can use JTA to participate in a distributed transaction.</li>
<li>Alternatively, a JMS client can demarcate transactions local to the JMS Session, through a transacted session.</li>
<li>Participation in a transaction is optional.</li>
</ul>
<blockquote>
<p style="text-align: center;"><em>Inclined to build a profession as Weblogic Developer? Then here is the blog post on, explore <a title="Weblogic Training" href="weblogic-server-administration-training" target="_blank" rel="noopener"><span style="color: #e03e2d;"><strong>Weblogic Training</strong></span></a></em></p>
</blockquote>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Administrative Tasks</strong></span></h2>
<p><strong><img class="alignnone wp-image-2582" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/507-460x119.png" alt="Administrative tasks" width="464" height="119" /></strong></p>
<ul>
<li>Administrative tasks include these:
<ul>
<li>Creating and monitoring JMS Servers</li>
<li>Creating connection factories</li>
<li>Creating and monitoring destinations</li>
<li>Creating JMS stores</li>
<li>Configuring thresholds and quotas</li>
<li>Configuring durable subscriptions</li>
<li>Managing JMS service fail-over</li>
</ul>
</li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>WLS JMS Server</strong></span></h2>
<ul>
<li>In WLS, the messaging service is implemented through a JMS Server.</li>
<li>A JMS Server receives and distributes messages.</li>
</ul>
<p><img class="alignnone wp-image-2583" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/5111-460x157.png" alt="WLS JMS Server" width="520" height="177" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Create a JMS Server</strong></span></h3>
<p>&nbsp; <img class="alignnone wp-image-2584" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/525-460x243.png" alt="JMS Server" width="506" height="266" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Target a JMS Server</strong></span></h3>
<p><img class="alignnone wp-image-2585" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/535-460x152.png" alt="JMS Server" width="506" height="167" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Configure a JMS Server</strong></span></h3>
<p><img class="alignnone wp-image-2586" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/545-460x281.png" alt="JMS Server" width="472" height="288" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>JMS Resources</strong></span></h3>
<ul>
<li>JMS resources are managed as system modules, application modules, or packaged JDBC resource modules.</li>
</ul>
<p><img class="alignnone wp-image-2587" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/555-460x203.png" alt="JMS Server" width="473" height="208" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Modular JMS Resource Configuration and Deployment...</strong></span></h3>
<ul>
<li>JMS configurations in WebLogic Server are stored as modules
<ul>
<li>Defined by an XML file that conforms to the Weblogic-jmsmd.xsd schema</li>
<li>Similar to standard J2EE modules</li>
</ul>
</li>
<li>An administrator can create and manage JMS modules as:
<ul>
<li>Global system resources</li>
<li>Global standalone modules</li>
<li>Modules packaged with an enterprise application</li>
</ul>
</li>
<li>An advantage of modular deployment is simplified migration between environments, such as:
<ul>
<li>From development to integration</li>
<li>From system test to production</li>
</ul>
</li>
<li>You can migrate your application and the required JMS configuration:
<ul>
<li>Without opening an EAR file</li>
<li>Without extensive manual JMS reconfiguration</li>
</ul>
</li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Connection Factory</strong></span></h2>
<ul>
<li>A connection factory:
<ul>
<li>Encapsulates connection configuration information</li>
<li>Is used to create pre-configured connections</li>
<li>Is stored in JNDI</li>
<li>Can be targeted to servers or clusters</li>
</ul>
</li>
<li>WLS provides a default connection factory that is bound in JNDI to weblogic.jms.ConnectionFactory.</li>
<li>When a new configuration is required, a new connection factory can be created.</li>
</ul>
<p><img class="alignnone wp-image-2588" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/565-460x234.png" alt="JMS Connection factory" width="501" height="254" /></p>
<p><img class="alignnone wp-image-2589" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/575-460x226.png" alt="JMS Connection factory" width="513" height="251" /></p>
<p><img class="alignnone wp-image-2590" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/585-460x182.png" alt="JMS Connection factory" width="496" height="195" /></p>
<p><img class="alignnone wp-image-2591" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/595-460x218.png" alt="JMS Connection factory" width="497" height="235" /></p>
<p><img class="alignnone wp-image-2592" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/605-460x204.png" alt="JMS Connection factory" width="510" height="226" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Configure Connection Factory: Default Delivery</strong></span></h3>
<p>&nbsp; <img class="alignnone wp-image-2593" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/619-460x203.png" alt="JMS Connection factory" width="491" height="216" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Configure Connection Factory: Client</strong></span></h3>
<p><img class="alignnone wp-image-2594" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/625-460x289.png" alt="JMS Connection factory" width="485" height="304" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Configure Connection Factory: Transactions</strong></span></h3>
<p><img class="alignnone wp-image-2595" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/635-460x218.png" alt="JMS Connection factory" width="456" height="216" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Configure Connection Factory:&nbsp; Flow Control</strong></span></h3>
<p><img class="alignnone wp-image-2596" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/645-460x329.png" alt="JMS Connection factory" width="435" height="310" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Destination</strong></span></h3>
<ul>
<li>A destination is a lightweight object stored in JNDI.</li>
<li>It is the target on a JMS Server for sending or receiving messages.</li>
<li>The JMS destination types are:
<ul>
<li>Queue</li>
<li>Topic</li>
</ul>
</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Create a Queue Destination&hellip;</strong></span></h3>
<p><img class="alignnone wp-image-2597" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/655-460x206.png" alt="JMS Connection factory" width="493" height="220" /></p>
<p><img class="alignnone wp-image-2598" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/665-460x204.png" alt="JMS Connection factory" width="489" height="217" /></p>
<p><img class="alignnone wp-image-2599" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/675-460x197.png" alt="JMS Connection factory" width="532" height="227" /> &nbsp;</p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Threshold and Quota</strong></span></h2>
<ul>
<li>A threshold and a quota can be set for Server and Destination objects.</li>
<li>A quota is a limit defined for JMS administered objects; it includes these values:
<ul>
<li>The maximum number of bytes that can be stored</li>
<li>The maximum number of messages that can be stored</li>
</ul>
</li>
<li>A threshold is a limit that triggers message paging, flow control, and logged warnings, using:
<ul>
<li>Upper and lower values for the number of bytes</li>
<li>Upper and lower values for the number of messages</li>
</ul>
</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Configuring Thresholds and Quotas</strong></span></h3>
<p><img class="alignnone wp-image-2600" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/685-460x289.png" alt="Threshold and Quotas" width="494" height="309" /></p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Configuring Persistent Messaging</strong> </span><strong>&nbsp;</strong></h2>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Durable Subscribers and Subscriptions</strong></span></h3>
<ul>
<li>Durable subscribers register durable subscriptions to guarantee message delivery even if subscribers are inactive.</li>
<li>A subscriber is considered active if the Java object that represents it exists.</li>
<li>By default, subscribers are non-durable.</li>
<li>Administrators configure:
<ul>
<li>Where messages are persisted</li>
<li>Persistent connection factories and destinations</li>
</ul>
</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>When to Use Persistent Messaging</strong></span></h3>
<ul>
<li>Persistent messaging permits messages in memory to be written out to a persistent store.</li>
<li>Configure persistent messaging if:
<ul>
<li>Development requires durable subscriptions (use durable subscribers in the application)</li>
<li>You require that in-progress messages persist across server restarts</li>
</ul>
</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>How a Durable Subscription Works</strong></span></h3>
<ul>
<li>If a subscriber client is active, messages are delivered normally:</li>
<li>When the client becomes active again, its ID is used to retrieve and redeliver messages.</li>
</ul>
<p>&nbsp; <img class="alignnone wp-image-2601" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/695-460x164.png" alt="Durable subscription" width="492" height="174" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Configure a Durable Subscription</strong></span></h3>
<ul>
<li>To configure durable subscriptions, an administrator must:
<ul>
<li>Create and configure a JMS store</li>
<li>Configure connection factories or destinations as persistent</li>
<li>Associate the JMS store with the JMS Server</li>
</ul>
</li>
<li>The JMS store can be configured to use either:
<ul>
<li>A file store</li>
<li>A JDBC store (a connection pool)</li>
</ul>
</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Create a JMS File Store&hellip;</strong></span></h3>
<p><img class="alignnone wp-image-2602" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/704-460x242.png" alt="70" width="474" height="248" /></p>
<p>&nbsp; <img class="alignnone wp-image-2603" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/719-460x193.png" alt="JMS" width="471" height="196" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Create a JMS JDBC Store&hellip;</strong></span></h3>
<ul>
<li>To configure JMS JDBC persistence:
<ul>
<li>Create a JDBC DataSource.</li>
<li>Create a JMS store and refer to the JDBC DataSource.</li>
<li>Refer to the JMS store from the JMS Server configuration.</li>
</ul>
</li>
<li>The required infrastructure (tables, and so on) is created automatically.</li>
</ul>
<p>&nbsp; <img class="alignnone wp-image-2604" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/725-460x293.png" alt="JMS" width="477" height="304" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Assign a Store to a JMS Server</strong></span></h3>
<p><img class="alignnone wp-image-2605" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/735-460x223.png" alt="JMS Server" width="480" height="232" /> &nbsp;</p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Persistent Connection Factory</strong> </span></h2>
<p><img class="alignnone wp-image-2606" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/745-460x304.png" alt="Connection factory" width="475" height="314" /> &nbsp;</p>
<p><img class="alignnone wp-image-2607" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/755-460x274.png" alt="Connection factory" width="479" height="284" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Monitoring JMS in WLS</strong> <strong>Statistics for JMS Objects</strong></span></h3>
<ul>
<li>Statistics are provided for the following JMS objects:
<ul>
<li>JMS servers</li>
<li>Connections</li>
<li>Destinations</li>
</ul>
</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Monitor JMS Servers&hellip;</strong></span></h3>
<p><img class="alignnone wp-image-2608" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/765-460x199.png" alt="JMS Server" width="493" height="212" /></p>
<p><img class="alignnone wp-image-2609" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/775-460x200.png" alt="JMS Server" width="485" height="210" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Monitor Destinations</strong></span></h3>
<p><img class="alignnone wp-image-2610" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/785-460x173.png" alt="JMS Server" width="474" height="177" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Summary:</strong> </span></h3>
<p><strong>In this chapter, we learned how to:</strong></p>
<ul>
<li><strong>Understand messaging concepts</strong></li>
<li><strong>Understand WebLogic Server&rsquo;s JMS support</strong></li>
<li><strong>Configure JMS servers, queues, and topics</strong></li>
<li><strong>Monitor JMS servers, queues, and topics</strong></li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Check out our Related Courses</strong> </span></h2>
<ul>
<li><a title="Weblogic Tutorials" href="tutorialsweblogic-tutorials-how-to" target="_blank" rel="noopener">Weblogic Tutorials</a></li>
<li><a title="Introduction to Clustering Weblogic" href="introduction-clustering-weblogic/" target="_blank" rel="noopener">Introduction to Clustering Weblogic</a></li>
<li><a title="WebLogic Server Admin Training in Bangalore" href="weblogic-server-administration-training/" target="_blank" rel="noopener">WebLogic Server Admin Training in Bangalore</a></li>
<li><a title="Oracle Weblogic Server Installation" href="weblogic-server-installation/" target="_blank" rel="noopener">Oracle Weblogic Server Installation</a> &nbsp; &nbsp; &nbsp;</li>
</ul>11:T8300,<p>&nbsp;</p>
<h2><span style="font-size: 14pt; color: #ba372a;"><strong>Using Work Managers to Optimize Scheduled Work</strong> </span></h2>
<p>WebLogic Server allows you to configure how your application prioritizes the execution of its work. Based on rules you define and by monitoring actual runtime performance, WebLogic Server can optimize the performance of your application and maintain service level agreements. You define the rules and constraints for your application by defining a Work Manager and applying it either globally to the WebLogic Server domain or to a specific application component.</p>
<ul>
<li>Understanding How WebLogic Server Uses Thread Pools</li>
<li>Understanding Work Managers</li>
<li>Work Manager Scope</li>
<li>Using Work Managers, Request Classes, and Constraints</li>
<li>Deployment Descriptor Examples</li>
<li>Work Managers and Execute Queues</li>
<li>Accessing Work Managers Using MBeans</li>
</ul>
<h2><span style="font-size: 14pt; color: #ba372a;"><strong>Understanding How WebLogic Server Uses Thread Pools</strong> </span></h2>
<ul>
<li>In previous versions of WebLogic Server, processing was performed in multiple execute queues. Different classes of work were executed in different queues, based on priority and order requirements, and to avoid deadlocks. In addition to the default execute queue, weblogic.kernel.default, there were pre-configured queues dedicated to internal administrative traffic, such as weblogic.admin.HTTP and weblogic.admin.RMI.</li>
<li>Users could control thread usage by altering the number of threads in the default queue or configure custom execute queues to ensure that particular applications had access to a fixed number of executing threads, regardless of overall system load.</li>
<li>WebLogic Server uses a single thread pool, in which all types of work are executed. WebLogic Server prioritizes work based on rules you define, and run-time metrics, including the actual time it takes to execute a request and the rate at which requests are entering and leaving the pool.</li>
<li>The common thread pool changes its size automatically to maximize throughput. The queue monitors throughput over time and based on history, determines whether to adjust the thread count. For example, if historical throughput statistics indicate that a higher thread count increased throughput, WebLogic increases the thread count. Similarly, if statistics indicate that fewer threads did not reduce throughput, WebLogic decreases the thread count. This new strategy makes it easier for administrators to allocate processing resources and manage performance, avoiding the effort and complexity involved in configuring, monitoring and tuning custom execute queues. <strong>&nbsp;</strong></li>
</ul>
<h2><span style="font-size: 14pt; color: #ba372a;"><strong>Understanding Work Managers</strong> </span></h2>
<p>WebLogic Server prioritizes work and allocates threads based on an execution model that takes into account administrator-defined parameters and actual run-time performance and throughput. &nbsp;</p>
<p>Administrators can configure a set of scheduling guidelines and associate them with one or more applications, or with particular application components. For example, you can associate one set of scheduling guidelines for one application, and another set of guidelines for other applications. At run-time, WebLogic Server uses these guidelines to assign pending work and enqueued requests to execution threads. To manage work in your applications, you define one or more of the following Work Manager components:</p>
<ul>
<li>Fair Share Request Class:</li>
<li>Response Time Request Class:</li>
<li>Min Threads Constraint:</li>
<li>Max Threads Constraint:</li>
<li>Capacity Constraint</li>
<li>Context Request Class:</li>
</ul>
<p>You can use any of these components to control the performance of your application by referencing the name of the component in the application&rsquo;s deployment descriptor. In addition, you may define a&nbsp;<em>Work Manager</em> that encapsulates all of the above components (except Context Request Class) and reference the name of the Work Manager in your application&rsquo;s deployment descriptor. You can define multiple Work Managers&mdash;the appropriate number depends on how many distinct demand profiles exist across the applications you host on WebLogic Server.</p>
<p>Work Managers can be configured at the domain level, application level, and module-level in one of the following configuration files:</p>
<ul>
<li>XML&mdash;Work Managers specified in config.xml can be assigned to any application, or application component, in the domain. You can use the Administration Console to define a Work Manager.</li>
<li>Weblogic-application.xml&mdash;Work Managers specified at the application level can be assigned to that application or any component of that application.</li>
<li>Weblogic-ejb-jar.xml or weblogic.xml&mdash;Work Managers specified at the component-level can be assigned to that component.</li>
<li>XML&mdash;Work Managers specified for a Web Application.</li>
</ul>
<p><span style="color: #ba372a;"><strong><em>Example of a Work Manager definition.</em> </strong></span></p>
<p><em>&lt;work-manager&gt; </em></p>
<p><em>&lt;name&gt;highpriority_workmanager&lt;/name&gt;</em></p>
<p><em> &lt;fair-share-request-class&gt;</em></p>
<p><em>&lt;name&gt;high_priority&lt;/name&gt;</em></p>
<p><em> &lt;fair-share&gt;100&lt;/fair-share&gt; </em></p>
<p><em>&lt;/fair-share-request-class&gt; </em></p>
<p><em>&lt;min-threads-constraint&gt; </em></p>
<p><em>&lt;name&gt;MinThreadsCountFive&lt;/name&gt; </em></p>
<p><em>&lt;count&gt;5&lt;/count&gt;</em></p>
<p><em>&lt;/work-manager&gt;</em></p>
<p>To reference the Work Manager used in the example the dispatch policy of a Web Application, add the code in&nbsp;the Web Application&rsquo;s&nbsp;web.xml&nbsp;file:</p>
<h3><span style="font-size: 12pt; color: #ba372a;"> <strong>Listing&nbsp;2-2 Referencing the Work Manager in a Web Application</strong> </span></h3>
<p><em>&lt;init-param&gt;</em></p>
<p><em> &lt;param-name&gt;wl-dispatch-policy&lt;/param-name&gt;</em></p>
<p><em> &lt;param-value&gt;highpriority_workmanager&lt;/param-value&gt; </em></p>
<p><em>&lt;/init-param&gt;</em></p>
<h2><span style="font-size: 14pt; color: #ba372a;"><strong>Work Manager Components:</strong> </span></h2>
<p>The components you can define and use in a Work Manager are described in following sections.</p>
<h2><span style="font-size: 14pt; color: #ba372a;"><strong>Request Classes</strong> </span></h2>
<p>A request class expresses a scheduling guideline that WebLogic Server uses to allocate threads to requests. Request classes help ensure that high priority work is scheduled before less important work, even if the high priority work is submitted after the lower priority work. WebLogic Server takes into account how long it takes for requests to each module to complete There are multiple types of request class, each of which expresses a scheduling guideline in different terms. A Work Manager may specify only one request class.</p>
<ul>
<li><strong><span style="color: #ba372a;">Fair-share-request-class</span>&mdash;</strong>specifies the average thread-use time required to process requests.</li>
</ul>
<p>For example, assume that WebLogic Server is running two modules. The Work Manager for ModuleA specifies a fair-share-request-class of 80 and the Work Manager for ModuleB specifies a fair-share-request-class of 20.</p>
<p>During a period of sufficient demand, with a steady stream of requests for each module such that the number of requests exceeds the number of threads, WebLogic Server will allocate 80% and 20% of the thread-usage time to ModuleA and modules, respectively.</p>
<table>
<tbody>
<tr>
<td><span style="color: #ba372a;"><strong>Note:</strong></span></td>
<td>The value of a fair share request class is specified as a relative value, not a percentage. Therefore, in the above example, if the request classes were defined as 400 and 100, they would still have the same relative values.</td>
</tr>
</tbody>
</table>
<ul>
<li><span style="color: #ba372a;"><strong>response-time-request-class</strong></span>&mdash;This type of request class specifies a response time goal in milliseconds. Response time goals are not applied to individual requests. Instead, WebLogic Server computes a tolerable waiting time for requests with that class by subtracting the observed average thread use time from the response time goal, and schedules request so that the average wait for requests with the class is proportional to its tolerable waiting time.</li>
</ul>
<p>For example, given that ModuleA and ModuleB in the previous example, have response time goals of 2000 ms and 5000 ms, respectively, and the actual thread use time for an individual request is less than its response time goal. During a period of sufficient demand, with a steady stream of requests for each module such that the number of requests exceeds the number of threads, and no &ldquo;think time&rdquo; delays between response and request, WebLogic Server will schedule requests for ModuleA and ModuleB to keep the average response time in the ratio 2:5. The actual average response times for ModuleA and ModuleB might be higher or lower than the response time goals, but will be a common fraction or multiple of the stated goal. For example, if the average response time for ModuleA requests is 1,000 ms., the average response time for ModuleB requests is 2,500 ms.</p>
<ul>
<li><span style="color: #ba372a;"><strong>context-request-class</strong></span>&mdash;This type of request class assigns request classes to requests based on context information, such as the current user or the current user&rsquo;s group.</li>
</ul>
<p>For example, the&nbsp;context-request-class&nbsp;in&nbsp;<a title="Context Request Class" href="http://download.oracle.com/docs/cd/E11035_01/wls100/config_wls/self_tuned.html#wp1065927" target="_blank" rel="noopener">Context Request Class</a>&nbsp;assigns a request class to requests based on the value of the request&rsquo;s&nbsp;subject&nbsp;and&nbsp;role&nbsp;properties.</p>
<h2><span style="font-size: 14pt; color: #ba372a;"><strong>Context Request Class</strong></span></h2>
<p>A context request class allows you to define request classes in an application&rsquo;s deployment descriptor based on a user&rsquo;s context. For example:</p>
<h3><span style="font-size: 12pt; color: #ba372a;"> <strong>Listing&nbsp;2-3 Context Request Class</strong> </span></h3>
<p><em>&lt;work-manager&gt; </em></p>
<p><em>&lt;name&gt;responsetime_workmanager&lt;/name&gt;</em></p>
<p><em> &lt;response-time-request-class&gt;</em></p>
<p><em> &lt;name&gt;my_response_time&lt;/name&gt; </em></p>
<p><em>&lt;goal-ms&gt;2000&lt;/goal-ms&gt; </em></p>
<p><em>&lt;/response-time-request-class&gt; </em></p>
<p><em>&lt;/work-manager&gt;</em></p>
<p>&lt;work-manager&gt;</p>
<p>&lt;name&gt;context_workmanager&lt;/name&gt;</p>
<p>&lt;context-request-class&gt;</p>
<p>&lt;name&gt;test_context&lt;/name&gt;</p>
<p>&lt;context-case&gt;</p>
<p>&lt;user-name&gt;system&lt;/user-name&gt;</p>
<p>&lt;request-class-name&gt;high_fairshare&lt;/request-class-name&gt;</p>
<p>&lt;/context-case&gt;</p>
<p>&lt;context-case&gt;</p>
<p>&lt;group-name&gt;everyone&lt;/group-name&gt;</p>
<p>&lt;request-class-name&gt;low_fairshare&lt;/request-class-name&gt;</p>
<p>&lt;/context-case&gt;</p>
<p>&lt;/context-request-class&gt;</p>
<p>&lt;/work-manager&gt;</p>
<p>Above, we explained the request classes based on fair share and response time by relating the scheduling to other work using the same request class. A mix of fair share and response time request classes is scheduled with a marked bias in favor of response time schedule.</p>
<h2><span style="font-size: 14pt; color: #ba372a;"> <strong>Constraints</strong> </span></h2>
<p>A constraint defines the minimum and maximum numbers of threads allocated to execute requests and the total number of requests that can be queued or executing before WebLogic Server begins rejecting requests. You can define the following types of constraints:</p>
<p><span style="color: #ba372a;"> <strong>max-threads-constraint</strong></span>&mdash;This constraint limits the number of concurrent threads executing requests from the constrained work set. The default is unlimited. For example, consider a constraint defined with maximum threads of 10 and shared by 3 entry points. The scheduling logic ensures that not more than 10 threads are executing requests from the three entry points combined. A max-threads-constraint can be defined in terms of the availability of resources that requests depend upon, such as a connection pool. A max-threads-constraint might, but does not necessarily, prevent a request class from taking its fair share of threads or meeting its response time goal. Once the constraint is reached the server does not schedule requests of this type until the number of concurrent executions falls below the limit. The server then schedules work based on the fair share or response time goal.</p>
<p><span style="color: #ba372a;"><strong>min-threads-constraint</strong></span>&mdash;This constraint guarantees a number of threads the server will allocate to affected requests to avoid deadlocks. The default is zero. A&nbsp;min-threads-constraint&nbsp;value of one is useful, for example, for a replication update request, which is called synchronously from a peer. A&nbsp;min-threads-constraint&nbsp;might not necessarily increase a fair share. This type of constraint has an effect primarily when the server instance is close to a deadlock condition. In that case, the constraint will cause WebLogic Server to schedule a request even if requests in the service class have more requests than its fair share recently.</p>
<p><span style="color: #ba372a;"><strong>capacity</strong></span>&mdash;This constraint causes the server to reject requests only when it has reached its capacity. The default is -1. Note that the capacity includes all requests, queued or executing, from the constrained work set. Work is rejected either when an individual capacity threshold is exceeded or if the global capacity is exceeded. This constraint is independent of the global queue threshold.</p>
<h2><span style="font-size: 14pt; color: #ba372a;"><strong>Stuck Thread Handling</strong></span></h2>
<p>In response to stuck threads, you can define a Stuck Thread Work Manager component that can shut down the Work Manager, move the application into admin mode, or mark the server instance as failed. For instance, the Work Manager defined in&nbsp;<a href="http://download.oracle.com/docs/cd/E11035_01/wls100/config_wls/self_tuned.html#wp1067629" target="_blank" rel="noopener">Listing&nbsp;2-4</a>&nbsp;shuts down the Work Manager when two threads are stuck for longer than 30 seconds.</p>
<h3><span style="font-size: 12pt; color: #ba372a;"><strong>Listing 2-4 Stuck-Thread Work Manager</strong></span></h3>
<p>&nbsp;&lt;work-manager&gt;</p>
<p>&lt;name&gt;stuckthread_workmanager&lt;/name&gt;</p>
<p>&lt;work-manager-shutdown-trigger&gt;</p>
<p>&lt;max-stuck-thread-time&gt;30&lt;/max-stuck-thread-time&gt;</p>
<p>&lt;stuck-thread-count&gt;2&lt;/stuck-thread-count&gt;</p>
<p>&lt;/work-manager-shutdown-trigger&gt;</p>
<p>&lt;/work-manager&gt; &nbsp;</p>
<h2><span style="font-size: 14pt; color: #ba372a;"><strong>Work Manager Scope</strong></span></h2>
<p>Essentially, there are three types of Work Managers, each one characterized by its scope and how it is defined and used. The three types are:</p>
<ul>
<li>The default Work Manager</li>
<li>Global Work Managers</li>
<li>Application-scoped Work Managers</li>
</ul>
<p>These three types of Work Managers are described in the following sections:</p>
<h3><span style="font-size: 12pt; color: #ba372a;"> <strong>The Default Work Manager</strong> </span></h3>
<ul>
<li>To handle thread management and perform self-tuning, WebLogic Server implements a default Work Manager. This Work Manager is used by an application when no other Work Managers are specified in the application&rsquo;s deployment descriptors.</li>
<li>In many situations, the default Work Manager may be sufficient for most application requirements. WebLogic Server&rsquo;s thread-handling algorithms assign each application its own fair share by default. Applications are given equal priority for threads and are prevented from monopolizing them.</li>
<li><em>Overriding the Default Work Manager</em></li>
</ul>
<p>You can override the behavior of the default Work Manager by creating and configuring a global Work Manager called&nbsp;default. This allows you to control the default thread-handling behavior of WebLogic Server.</p>
<ul>
<li><em>When to Use Work Managers</em></li>
</ul>
<p>Following are guidelines to help you determine when you might want to use Work Managers to customize thread management:</p>
<ul>
<li>The default fair share is not sufficient. This usually occurs in situations where one application needs to be given higher priority over another.</li>
<li>A response time goal is required.</li>
<li>A minimum thread constraint needs to be specified to avoid server deadlock</li>
</ul>
<h3><span style="font-size: 12pt; color: #ba372a;"><strong>Global Work Managers</strong></span></h3>
<ul>
<li>You can create Work Managers that are available to all applications and modules deployed on a server. Global Work Managers are created in the WebLogic Administration Console and are defined in config.xml.</li>
<li>An application uses a globally defined Work Manager as a template. Each application creates its own instance which handles the work associated with that application and separates that work from other applications. This separation is used to handle traffic directed to two applications that are using the same dispatch policy. Handling each application&rsquo;s work separately, allows an application to be shut down without affecting the thread management of another application. Although each application implements its own Work Manager instance, the underlying components are shared.</li>
</ul>
<h3><span style="font-size: 12pt; color: #ba372a;"> <strong>Application-scoped Work Managers</strong></span></h3>
<p>In addition to globally-scoped Work Managers, you can also create Work Managers that are available only to a specific application or module. Work Managers can be specified in the following descriptors:</p>
<ul>
<li>Weblogic-application.xml</li>
<li>Weblogic-ejb-jar.xml</li>
<li>xml</li>
</ul>
<p>If you do not explicitly assign a Work Manager to an application, it uses the default Work Manager.</p>
<p>A method is assigned to a Work Manager, using the&nbsp;&lt;dispatch-policy&gt;&nbsp;element in the deployment descriptor. The&nbsp;&lt;dispatch-policy&gt;&nbsp;can also identify a custom execute queue, for backward compatibility. &nbsp;</p>
<h2><span style="font-size: 14pt; color: #ba372a;"> <strong>Using Work Managers, Request Classes, and Constraints</strong> </span></h2>
<p><em>Work Managers, Request Classes, and Constraints require the following:</em></p>
<ul>
<li>A definition. You may define a Work Managers, Request Classes, or Constraints globally in the domain&rsquo;s configuration using the Administration Console, (see Environments &gt; Work Managers in the Administration Console) or you may define them in one of the deployment descriptors listed above. In either case, you assign a name to each.</li>
<li>A mapping. In your deployment descriptors, you reference one of the Work Managers, Request Classes, or Constraints by its name.</li>
</ul>
<p><em>Dispatch Policy for EJB</em></p>
<p>weblogic-ejb-jar.xml&mdash;the value of the existing dispatch-policy tag under weblogic-enterprise-bean can be a named dispatch-policy. For backward compatibility, it can also name an ExecuteQueue. In addition, we allow dispatch-policy, max-threads, and min-threads, to specify named (or unnamed with a numeric value for constraints) policy and constraints for a list of methods, analogously to the present isolation-level tag.</p>
<p><em>Dispatch Policy for Web Applications</em></p>
<p>weblogic.xml&mdash;also supports mappings analogous to the&nbsp;filter-mapping&nbsp;of the&nbsp;web.xml, where named dispatch-policy, max-threads, or min-threads are mapped for url-patterns or servlet names.</p>
<h3><span style="font-size: 12pt; color: #ba372a;"> <strong>Deployment Descriptor Examples</strong> </span></h3>
<p>This section contains examples for defining Work Managers in various types of deployment descriptors. For additional reference, see also the schema for these deployment descriptors:</p>
<ul>
<li><a href="http://www.bea.com/ns/weblogic/90/weblogic-ejb-jar.xsd" target="_blank" rel="noopener">weblogic-ejb-jar.xml schema</a></li>
<li><a href="http://www.bea.com/ns/weblogic/90/weblogic-application.xsd" target="_blank" rel="noopener">weblogic-application.xml schema</a></li>
<li><a href="http://www.bea.com/ns/weblogic/90/weblogic-web-app.xsd" target="_blank" rel="noopener">xml schema</a></li>
</ul>
<p><span style="color: #ba372a;"><strong><em>weblogic-ejb-jar.xml With Work Manager Entries</em></strong></span></p>
<p>&lt;weblogic-ejb-jar xmlns="http://www.bea.com/ns/weblogic/90"</p>
<p>xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"</p>
<p>xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"</p>
<p>xsi:schemaLocation="http://www.bea.com/ns/weblogic/90</p>
<p><a href="http://www.bea.com/ns/weblogic/90/weblogic-ejb-jar.xsd&quot;&gt;">http://www.bea.com/ns/weblogic/90/weblogic-ejb-jar.xsd"&gt;</a></p>
<p>&lt;weblogic-enterprise-bean&gt;</p>
<p>&lt;ejb-name&gt;WorkEJB&lt;/ejb-name&gt;</p>
<p>&lt;jndi-name&gt;core_work_ejb_workbean_WorkEJB&lt;/jndi-name&gt;</p>
<p>&lt;dispatch-policy&gt;weblogic.kernel.System&lt;/dispatch-policy&gt;</p>
<p>&lt;/weblogic-enterprise-bean&gt;</p>
<p>&lt;weblogic-enterprise-bean&gt;</p>
<p>&lt;ejb-name&gt;NonSystemWorkEJB&lt;/ejb-name&gt;</p>
<p>&lt;jndi-name&gt;core_work_ejb_workbean_NonSystemWorkEJB&lt;/jndi-name&gt;</p>
<p>&lt;dispatch-policy&gt;workbean_workmanager&lt;/dispatch-policy&gt;</p>
<p>&lt;/weblogic-enterprise-bean&gt;</p>
<p>&lt;weblogic-enterprise-bean&gt;</p>
<p>&lt;ejb-name&gt;MinThreadsWorkEJB&lt;/ejb-name&gt;</p>
<p>&lt;jndi-name&gt;core_work_ejb_workbean_MinThreadsWorkEJB&lt;/jndi-name&gt;</p>
<p>&lt;dispatch-policy&gt;MinThreadsCountFive&lt;/dispatch-policy&gt;</p>
<p>&lt;/weblogic-enterprise-bean&gt;</p>
<p>&lt;work-manager&gt;</p>
<p>&lt;name&gt;workbean_workmanager&lt;/name&gt;</p>
<p>&lt;/work-manager&gt;</p>
<p>&lt;work-manager&gt;</p>
<p>&lt;name&gt;stuckthread_workmanager&lt;/name&gt;</p>
<p>&lt;work-manager-shutdown-trigger&gt;</p>
<p>&lt;max-stuck-thread-time&gt;30&lt;/max-stuck-thread-time&gt;</p>
<p>&lt;stuck-thread-count&gt;2&lt;/stuck-thread-count&gt;</p>
<p>&lt;/work-manager-shutdown-trigger&gt;</p>
<p>&lt;/work-manager&gt;</p>
<p>&lt;work-manager&gt;</p>
<p>&lt;name&gt;minthreads_workmanager&lt;/name&gt;</p>
<p>&lt;min-threads-constraint&gt;</p>
<p>&lt;name&gt;MinThreadsCountFive&lt;/name&gt;</p>
<p>&lt;count&gt;5&lt;/count&gt;</p>
<p>&lt;/min-threads-constraint&gt;</p>
<p>&lt;/work-manager&gt;</p>
<p>&lt;work-manager&gt;</p>
<p>&lt;name&gt;lowpriority_workmanager&lt;/name&gt;</p>
<p>&lt;fair-share-request-class&gt;</p>
<p>&lt;name&gt;low_priority&lt;/name&gt;</p>
<p>&lt;fair-share&gt;10&lt;/fair-share&gt;</p>
<p>&lt;/fair-share-request-class&gt;</p>
<p>&lt;/work-manager&gt;</p>
<p>&lt;work-manager&gt;</p>
<p>&lt;name&gt;highpriority_workmanager&lt;/name&gt;</p>
<p>&lt;fair-share-request-class&gt;</p>
<p>&lt;name&gt;high_priority&lt;/name&gt;</p>
<p>&lt;fair-share&gt;100&lt;/fair-share&gt;</p>
<p>&lt;/fair-share-request-class&gt;</p>
<p>&lt;/work-manager&gt;</p>
<p>&lt;work-manager&gt;</p>
<p>&lt;name&gt;veryhighpriority_workmanager&lt;/name&gt;</p>
<p>&lt;fair-share-request-class&gt;</p>
<p>&lt;name&gt;veryhigh_priority&lt;/name&gt;</p>
<p>&lt;fair-share&gt;1000&lt;/fair-share&gt;</p>
<p>&lt;/fair-share-request-class&gt;</p>
<p>&lt;/work-manager&gt;</p>
<p><span style="color: #ba372a;"><strong> <em>weblogic-ejb-jar.xml with Connection Pool Based Max Thread Constraint</em></strong></span></p>
<p>These EJBs are configured to get as many threads as there are instances of a resource they depend upon&mdash;a connection pool, and an application scoped connection pool.</p>
<p>&lt;/weblogic-ejb-jar&gt;</p>
<p>&lt;weblogic-ejb-jar xmlns="http://www.bea.com/ns/weblogic/90"</p>
<p>xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"</p>
<p>xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"</p>
<p>xsi:schemaLocation="http://www.bea.com/ns/weblogic/90</p>
<p><a href="http://www.bea.com/ns/weblogic/90/weblogic-ejb-jar.xsd&quot;&gt;">http://www.bea.com/ns/weblogic/90/weblogic-ejb-jar.xsd"&gt; </a></p>
<p>&lt;weblogic-enterprise-bean&gt;</p>
<p>&lt;ejb-name&gt;ResourceConstraintEJB&lt;/ejb-name&gt;</p>
<p>&lt;jndi-name&gt;core_work_ejb_resource_ResourceConstraintEJB&lt;/jndi-name&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;dispatch-policy&gt;<strong>test_resource</strong>&lt;/dispatch-policy&gt;</p>
<p>&lt;/weblogic-enterprise-bean&gt;</p>
<p>&lt;weblogic-enterprise-bean&gt;</p>
<p>&lt;ejb-name&gt;AppScopedResourceConstraintEJB&lt;/ejb-name&gt;</p>
<p>&lt;jndi-name&gt;core_work_ejb_resource_AppScopedResourceConstraintEJB</p>
<p>&lt;/jndi-name&gt;</p>
<p>&lt;dispatch-policy&gt;<strong>test_appscoped_resource</strong>&lt;/dispatch-policy&gt;</p>
<p>&lt;/weblogic-enterprise-bean&gt;</p>
<p>&lt;work-manager&gt;</p>
<p>&lt;name&gt;<strong>test_resource</strong>&lt;/name&gt;</p>
<p>&lt;max-threads-constraint&gt;</p>
<p>&lt;name&gt;pool_constraint&lt;/name&gt;</p>
<p>&lt;pool-name&gt;testPool&lt;/pool-name&gt;</p>
<p>&lt;/max-threads-constraint&gt;</p>
<p>&lt;/work-manager&gt;</p>
<p>&lt;work-manager&gt;</p>
<p>&lt;name&gt;<strong>test_appscoped_resource</strong>&lt;/name&gt;</p>
<p>&lt;max-threads-constraint&gt;</p>
<p>&lt;name&gt;appscoped_pool_constraint&lt;/name&gt;</p>
<p>&lt;pool-name&gt;AppScopedDataSource&lt;/pool-name&gt;</p>
<p>&lt;/max-threads-constraint&gt;</p>
<p>&lt;/work-manager&gt;</p>
<p>&lt;/weblogic-ejb-jar&gt;</p>
<p><strong><span style="color: #ba372a;"> <em>weblogic-application.xml</em></span></strong></p>
<p>&lt;weblogic-application xmlns="http://www.bea.com/ns/weblogic/90"</p>
<p>xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"</p>
<p>xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"</p>
<p>xsi:schemaLocation="http://www.bea.com/ns/weblogic/90</p>
<p><a href="http://www.bea.com/ns/weblogic/90/weblogic-application.xsd&quot;&gt;"> http://www.bea.com/ns/weblogic/90/weblogic-application.xsd"&gt;</a></p>
<p>&lt;max-threads-constraint&gt;</p>
<p>&lt;name&gt;j2ee_maxthreads&lt;/name&gt;</p>
<p>&lt;count&gt;1&lt;/count&gt;</p>
<p>&lt;/max-threads-constraint&gt;</p>
<p>&lt;min-threads-constraint&gt;</p>
<p>&lt;name&gt;j2ee_minthreads&lt;/name&gt;</p>
<p>count&gt;1&lt;/count&gt;</p>
<p>&lt;/min-threads-constraint&gt;</p>
<p>&lt;work-manager&gt;</p>
<p>&lt;name&gt;J2EEScopedWorkManager&lt;/name&gt;</p>
<p>&lt;/work-manager&gt;</p>
<p>&lt;/weblogic-application&gt;</p>
<p><span style="color: #ba372a;"><strong><em>web application descriptor</em> </strong></span></p>
<p>This Web Application is deployed as part of the Enterprise Application defined in&nbsp; <strong>weblogic-application.xml</strong>. This Web Application&rsquo;s descriptor defines two Work Managers. Both Work Managers point to the same max threads constraint,&nbsp;j2ee_maxthreads&nbsp;which is defined in the application&rsquo;s&nbsp;weblogic-application.xml&nbsp;file. Each Work Manager specifies a different response time request class.</p>
<p>&lt;weblogic xmlns="http://www.bea.com/ns/weblogic/90"</p>
<p>xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"</p>
<p>xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"</p>
<p>xsi:schemaLocation="http://www.bea.com/ns/weblogic/90</p>
<p><a href="http://www.bea.com/ns/weblogic/90/weblogic.xsd&quot;&gt;">http://www.bea.com/ns/weblogic/90/weblogic.xsd"&gt; </a></p>
<p>&lt;work-manager&gt;</p>
<p>&lt;name&gt;fast_response_time&lt;/name&gt;</p>
<p>&lt;response-time-request-class&gt;</p>
<p>&lt;name&gt;fast_response_time&lt;/name&gt;</p>
<p>&lt;goal-ms&gt;2000&lt;/goal-ms&gt;</p>
<p>&lt;/response-time-request-class&gt;</p>
<p>&lt;max-threads-constraint-name&gt;j2ee_maxthreads</p>
<p>&lt;/max-threads-constraint-name&gt;</p>
<p>&lt;/work-manager&gt;</p>
<p>&lt;work-manager&gt;</p>
<p>&lt;name&gt;slow_response_time&lt;/name&gt;</p>
<p>&lt;max-threads-constraint-name&gt;j2ee_maxthreads</p>
<p>&lt;/max-threads-constraint-name</p>
<p>&lt;response-time-request-class&gt;</p>
<p>&lt;name&gt;slow_response_time&lt;/name&gt;</p>
<p>&lt;goal-ms&gt;5000&lt;/goal-ms&gt;</p>
<p>&lt;/response-time-request-class&gt;</p>
<p>&lt;/work-manager&gt;</p>
<p>&lt;/weblogic&gt;</p>
<p><span style="color: #ba372a;"><strong> <em>web application descriptor</em> </strong></span></p>
<p>This descriptor defines a Work Manager using the context-request-class.</p>
<p>&lt;?xml version="1.0" encoding="UTF-8"?&gt;</p>
<p>&lt;weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/90"</p>
<p>xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"</p>
<p>xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"</p>
<p>xsi:schemaLocation="http://www.bea.com/ns/weblogic/90</p>
<p><a href="http://www.bea.com/ns/weblogic/90/weblogic-web-app.xsd&quot;&gt;">http://www.bea.com/ns/weblogic/90/weblogic-web-app.xsd"&gt;</a></p>
<p>&lt;work-manager&gt;</p>
<p>&lt;name&gt;foo-servlet-1&lt;/name&gt;</p>
<p>&lt;request-class-name&gt;test-fairshare2&lt;/request-class-name&gt;</p>
<p>&lt;max-threads-constraint&gt;</p>
<p>&lt;name&gt;foo-mtc&lt;/name&gt;</p>
<p>&lt;pool-name&gt;oraclePool&lt;/pool-name&gt;</p>
<p>&lt;/max-threads-constraint&gt;</p>
<p>&lt;/work-manager&gt;</p>
<p>&lt;work-manager&gt;</p>
<p>&lt;name&gt;foo-servlet&lt;/name&gt;</p>
<p>&lt;context-request-class&gt;</p>
<p>&lt;name&gt;test-context&lt;/name&gt;</p>
<p>&lt;context-case&gt;</p>
<p>&lt;user-name&gt;anonymous&lt;/user-name&gt;</p>
<p>&lt;request-class-name&gt;test-fairshare1&lt;/request-class-name&gt;</p>
<p>&lt;/context-case&gt;</p>
<p>&lt;context-case&gt;</p>
<p>&lt;group-name&gt;everyone&lt;/group-name&gt;</p>
<p>&lt;request-class-name&gt;test-fairshare2&lt;/request-class-name&gt;</p>
<p>&lt;/context-case&gt;</p>
<p>&lt;/context-request-class&gt;</p>
<p>&lt;/work-manager&gt;</p>
<p>&lt;/weblogic-web-app&gt; &nbsp;</p>
<h3><span style="font-size: 12pt; color: #ba372a;"><strong>Work Managers and Execute Queues</strong> </span></h3>
<p>This section discusses how to enable backward compatibility with Execute Queues and how to migrate applications from using Execute Queues to Work Managers.</p>
<h3><span style="font-size: 12pt; color: #ba372a;"><strong>Enabling Execute Queues</strong> </span></h3>
<p>WebLogic Server, Version 8.1 implemented Execute Queues to handle thread management which allowed you to create thread-pools to determine how the workload was handled. WebLogic Server still provides Execute Queues for backward compatibility, primarily to facilitate application migration. However, new application development should utilize Work Managers to perform thread management more efficiently. You can enable Execute Queues in the following ways:</p>
<ul>
<li>Using the command line option</li>
</ul>
<p>-Dweblogic.Use81StyleExecuteQueues=true</p>
<ul>
<li>Setting the&nbsp;Use81StyleExecuteQueues&nbsp;property via the Kernel MBean in&nbsp;config.xml.</li>
</ul>
<p>When enabled, Work Managers are converted to Execute Queues based on the following rules:</p>
<ul>
<li>If the Work Manager implements a minimum or maximum threads constraint, then an Execute Queue is created with the same name as the Work Manager. The thread count of the Execute Queue is based on the value defined in the constraint.</li>
<li>If the Work Manager does not implement any constraints, then the global default Execute Queue is used.</li>
</ul>
<h3><span style="font-size: 12pt; color: #ba372a;"><strong>Migrating from Execute Queues to Work Managers</strong></span></h3>
<p>When an application is migrated from WebLogic Server 8.1, any Execute Queues defined in the server configuration before migration will still be present. WebLogic Server does not automatically convert the Execute Queues to Work Managers. When an 8.1 application implementing Execute Queues is deployed on WebLogic Server 9.x, the Execute Queues are created to handle thread management for requests. However, only those requests whose dispatch-policy maps to an Execute Queue will take advantage of this feature.</p>
<h2><span style="font-size: 14pt; color: #ba372a;"> <strong>Check out our Related Courses</strong></span></h2>
<ul>
<li><a title="Weblogic Tutorials" href="tutorialsweblogic-tutorials-how-to" target="_blank" rel="noopener">Weblogic Tutorials</a></li>
<li><a title="Introduction to Clustering Weblogic" href="introduction-clustering-weblogic/" target="_blank" rel="noopener">Introduction to Clustering Weblogic</a></li>
<li><a title="Oracle Goldengate Training In Bangalore" href="oracle-goldengate-training/" target="_blank" rel="noopener">Oracle Goldengate Training In Bangalore</a></li>
<li><a title="Oracle Weblogic Server Installation" href="weblogic-server-installation/" target="_blank" rel="noopener">Oracle Weblogic Server Installation</a> &nbsp;</li>
</ul>12:T6df8,<p>&nbsp;</p>
<p style="text-align: justify;"><span style="color: #000000;">At the end of this chapter you will be able to:</span></p>
<ul style="text-align: justify;">
<li><span style="color: #000000;"><strong>Overview of Node Manager Configuration</strong></span></li>
<li><span style="color: #000000;"><strong>General Configuration Steps</strong></span>
<ul>
<li><span style="color: #000000;">Step 1: Configure Your Computer to Run Node Manager</span></li>
<li><span style="color: #000000;">Step 2: Specify Node Manager Username and Password</span></li>
<li><span style="color: #000000;">Step 3: Configure a Machine to Use Node Manager</span></li>
<li><span style="color: #000000;">Step 4: Configuring node manager.domains File</span></li>
<li><span style="color: #000000;">Step 5: Configuring Remote Startup Arguments</span></li>
<li><span style="color: #000000;">Step 6: Setting Server Startup Properties</span></li>
<li><span style="color: #000000;">Step 7: Define the Administration Server Address</span></li>
<li><span style="color: #000000;">Step 8: Set the Node Manager Environment Variables</span></li>
</ul>
</li>
</ul>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Overview of Node Manager Configuration</strong></span></h2>
<ul>
<li style="text-align: justify;"><span style="color: #000000;">This section describes the general Node Manager configuration that applies to the Java and script version of Node Manager. You should ensure that you have performed all of the items outlined in the following sections.</span></li>
<li style="text-align: justify;"><span style="color: #000000;">After you have performed general Node Manager configuration, you should perform the configuration procedures outlined in Configuring Java Node Manager or Configuring Script Node Manager depending on which version of the Node Manager you are using.</span></li>
</ul>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>General Configuration Steps:</strong></span></h2>
<p style="text-align: justify;"><span style="color: #000000;">The following sections describe general procedures that are applicable to both the Java and scripted version of Node Manager:</span></p>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Step 1: Configure Your Computer to Run Node Manager</span></li>
<li><span style="color: #000000;">Step 2: Specify Node Manager Username and Password</span></li>
<li><span style="color: #000000;">Step 3: Configure a Machine to Use Node Manager</span></li>
<li><span style="color: #000000;">Step 4: Configuring node manager.domains File</span></li>
<li><span style="color: #000000;">Step 5: Configuring Remote Startup Arguments</span></li>
<li><span style="color: #000000;">Step 6: Setting Server Startup Properties</span></li>
<li><span style="color: #000000;">Step 7: Define the Administration Server Address</span></li>
<li><span style="color: #000000;">Step 8: Set the Node Manager Environment Variables</span></li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Step 1: Configure Your Computer to Run Node Manager</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;">Node Manager must run on each computer that hosts a WebLogic Server instance. Configure each computer as a machine resource in WebLogic Server, and assign each server instance that you will control with Node Manager to the machine upon which it runs.</span></p>
<p style="text-align: justify;"><span style="color: #000000;">Ideally, Node Manager should run as an operating system service or daemon, so that it is automatically restarted in the event of system failure or reboot.</span></p>
<p style="text-align: justify;"><span style="color: #000000;">Node Manager is ready-to-run after WebLogic Server installation if you run Node Manager and the Administration Server on the same machine and use the demonstration SSL configuration.</span></p>
<p style="text-align: justify;"><span style="color: #000000;">By default, the following behaviors are configured:</span></p>
<ul style="text-align: justify;">
<li><span style="color: #000000;">You can start a Managed Server using Node Manager through the Administration Console.</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Node Manager monitors the Managed Servers that it has started.</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">The automatic restart of Managed Servers is enabled. Node Manager restarts server instances that it killed or was killed by another method.</span></li>
</ul>
<p style="text-align: justify;"><span style="color: #000000;">However, by default, the nmConnect command cannot be used in a production environment. You must first perform the following procedures to use nmConnect in a production environment.</span></p>
<p><span style="color: #000000;">1. Start the Administration Server.</span></p>
<p><span style="color: #000000;">2. Using the Administration Console update the Node Manager credentials from the Advanced options under domain_name&rarr;Security&rarr;General.</span></p>
<p><span style="color: #000000;">3. Invoke WLST and connect to an Administration Server using the connect command.</span></p>
<p><span style="color: #000000;">4. Run nmEnroll using the following syntax: nmEnroll([domainDir], [nmHome])</span></p>
<p style="text-align: justify;"><span style="color: #000000;">For example,</span></p>
<p style="text-align: justify;"><span style="color: #000000;">nmEnroll('C:/bea/user_projects/domains/prod_domain',</span></p>
<p style="text-align: justify;"><span style="color: #000000;">'C:/bea/wlserver_10.0/common/nodemanager')</span></p>
<p style="text-align: justify;"><span style="color: #000000;">Running nmEnroll() ensures that the correct Node Manager user and password token are supplied to each Managed Server. Once these are available for each Managed Server, you can use nmConnect() in a production environment.</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><strong><span style="color: #e03e2d;">Note:</span></strong> You must run nmEnroll() on each machine that is running a Managed Server. Additionally, you should run nmEnroll() for each domain directory on each machine.</span></p>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Step 2: Specify Node Manager Username and Password</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;">The nm_password.properties file contains the Node Manager username and password. These are used to authenticate the connection between a client (for example, the Administration Server) and Node Manager.</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><span style="color: #e03e2d;"><strong>Note: </strong></span>This username and password are only used to authenticate connections between Node Manager and clients. They are independent of the server admin ID and password.</span></p>
<p style="text-align: justify;"><span style="color: #000000;">Administration Console NM Security</span></p>
<p style="text-align: justify;"><span style="color: #000000;">Domain_Name -&gt; Security -&gt; Advanced Options</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2453" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/923-460x109.png" alt="Node manager" width="486" height="115" /></span></p>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Step 3: Configure a Machine to Use Node Manager</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;">Configure a machine definition for each machine that runs a Node Manager process using the Environment&rarr;Machines&rarr;&lt;machine_name&gt;&rarr;Node Manager page in the Administration Console. Enter the DNS name or IP address upon which Node Manager listens in the Listen Address field.</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2455" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/934-460x287.png" alt="Node manager" width="489" height="305" /></span></p>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Step 4: Configuring nodemanager.domains File</strong></span></h3>
<ul>
<li style="text-align: justify;"><span style="color: #000000;">The nodemanager.domains file specifies the domains that a Node Manager instance controls. Thus stand-alone clients do not need to specify the domain directory explicitly.</span></li>
<li style="text-align: justify;"><span style="color: #000000;">This file must contain an entry specifying the domain directory for each domain the Node Manager instance controls, in this form:</span></li>
<li style="text-align: justify;"><span style="color: #000000;">&lt;domain-name&gt;=&lt;domain-directory&gt;</span></li>
<li style="text-align: justify;"><span style="color: #000000;">When a user issues a command for a domain, the Node Manager looks up the domain directory from nodemanager.domains.</span></li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Step 5: Configuring Remote Startup Arguments</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;">In the Administration Console, on the Server&rarr;Configuration&rarr;Server Start page for the Managed Server, specify the startup arguments that Node Manager will use to start a Managed Server. If you do not specify startup arguments for a Managed Server, Node Manager uses its own properties as defaults to start the Managed Server.</span></p>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Step 6: Setting Server Startup Properties</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;">You can use the Node Manager to set the startup properties for a server. These properties can be defined in startup.properties or passed as an object using administrative utilities such as WLST. This file is defined for each server instance and is located in:</span></p>
<p style="text-align: justify;"><span style="color: #000000;">domain_home/servers/server_name/data/nodemanager/startup.properties</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2456" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/944-460x271.png" alt="Node manager" width="467" height="274" /></span></p>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Step 7: Define the Administration Server Address</strong></span></h3>
<ul>
<li style="text-align: justify;"><span style="color: #000000;">Ensuring Administration Server Address is defined A Listen Address must be defined for each Administration Server that will connect to the Node Manager process.</span></li>
<li style="text-align: justify;"><span style="color: #000000;">Set the Listen Address using the Servers&rarr;Configuration&rarr;General page in the Administration Console.</span></li>
</ul>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2457" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/954-460x211.png" alt="Node manager" width="500" height="228" /></span></p>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Step 8: Set the Node Manager Environment Variables</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;">Node Manager requires you to set several environment variables before you start it. You can set these variables manually on the command line, or you can create a start script that sets them automatically. The sample start scripts provided with WebLogic Server, startNodeManager.cmd, and startNodeManager.sh, set the required variables.</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2458" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/964-460x277.png" alt="Node manager" width="462" height="277" /></span></p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Configuring Java &amp; Script-Based Node Manager</strong></span></h2>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Configuring Java-Based Node Manager</strong></span></h3>
<ul style="text-align: justify;">
<li><span style="color: #000000;">BEA recommends configuring NM to run as an operating system service or a Windows service on Windows systems. By default, the operating system service starts up Node Manager to listen on localhost: 5556.</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Configuration tasks for Java-based Node Manager include:</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Reconfiguring Startup Service for Windows Installation</span></li>
<li><span style="color: #000000;">Configuring Java-based Node Manager Security</span></li>
<li><span style="color: #000000;">Reviewing nodemanager.properties</span></li>
<li><span style="color: #000000;">Configuring Node Manager on Multiple Machines</span></li>
<li><span style="color: #000000;">Configuring Node Manager as an xinetd Service</span></li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Reconfigure Startup Service for Windows Installations</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;">The directory WL_HOMEserverbin (where WL_HOME is the top-level directory for the WebLogic Server installation) contains uninstallNodeMgrSvc.cmd, a script for uninstalling the Node Manager service, and installNodeMgrSvc.cmd, a script for installing Node Manager as a service.</span></p>
<ol style="text-align: justify;">
<li><span style="color: #000000;">Delete the service using uninstallNodeMgrSvc.cmd.</span></li>
</ol>
<ol style="text-align: justify;" start="2">
<li><span style="color: #000000;">Edit installNodeMgrSvc.cmd to specify Node Manager&rsquo;s Listen Address and Listen Port. Make the same edits to uninstallNodeMgrSvc.cmd as you make to installNodeMgrSvc.cmd so that you can successfully uninstall the service in the future, as desired.</span></li>
</ol>
<ol style="text-align: justify;" start="3">
<li><span style="color: #000000;">Run installNodeMgrSvc.cmd to re-install Node Manager as a service, listening to the updated address and port.</span></li>
</ol>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Configuring Java-Based Node Manager Security</strong></span></h3>
<ul style="text-align: justify;">
<li><span style="color: #000000;">NM Security relies on a one-way SSL connection between client and server</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">WLST uses the nmConnect command to establish a connection to the Java Node Manager.</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">The nmConnect command requires a username and password, which is verified against the nm_password.properties file.</span></li>
</ul>
<p style="text-align: justify;"><span style="color: #000000;">Node Manager credentials are located on the domain_name&rarr;Security&rarr;General&rarr;Advanced Options page in the Administration Console.</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2459" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/974-460x105.png" alt="Node manager" width="463" height="105" /></span></p>
<p style="text-align: justify;"><span style="color: #000000;">Administration Console users do not need to provide credentials to connect to Node Manager explicitly&mdash;the Node Manager username and password are available in the domain configuration and are provided automatically.</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em>Remote Server Start Security for Java-Based Node Manager</em></span></p>
<p style="text-align: justify;"><span style="color: #000000;">Credentials for Managed Servers and Administration Servers are handled differently:</span></p>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Managed Servers &ndash; When you invoke NM to start a Managed Server it gets its remote username and password from the Administration Server</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Administration Servers &ndash; When you invoke NM to start an Administration Server, the remote start username come from either the command-line or the boot.properties file</span></li>
</ul>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Reviewing nodemanager.properties</strong></span></h2>
<p style="text-align: justify;"><span style="color: #000000;">Node Manager properties define a variety of configuration settings for a Java-based Node Manager process. You can specify Node Manager properties on the command line or define them in the nodemanager.properties file, which is created in the directory where you start Node Manager the first time it starts up after installation of WebLogic Server. Values supplied on the command line override the values in nodemanager.properties.</span></p>
<p style="text-align: justify;"><span style="color: #000000;">nodemanager.properties is created in the directory specified in NodeManagerHome, where NodeManagerHome is WL_HOME/common/nodemanager. If NodeManagerHome is not defined, nodemanager.properties is created in the current directory.</span></p>
<p style="text-align: justify;"><span style="color: #000000;">Each time you start Node Manager, it looks for nodemanager.properties on the current directory and creates the file if it does not exist in that directory. You cannot access the file until Node Manager has started up once.</span></p>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Properties for a Java-based Node Manager process can be specified either at the command line or in the nodemanager.properties file.</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Values supplied on the command line take precedence over those in the nodemanager.properties file.</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">To configure the Node Manager to use a start script, in the nodemanager.properties file:</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">set the StartScriptEnabled property to true.</span></li>
<li><span style="color: #000000;">Set the StartScriptName property to the name of your script</span></li>
</ul>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Configuring Node Manager on Multiple Machines</strong></span></h2>
<p style="text-align: justify;"><span style="color: #000000;">If you have a domain that has Managed Servers on multiple physical machines, you must ensure that the Node Manager is installed and configured on each machine. You can use the WLST command nmEnroll to copy all of the required domain and configuration information from one machine to another.</span></p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Configuring Node Manager as a&nbsp;xinetd Service</strong></span></h2>
<p style="text-align: justify;"><span style="color: #000000;">When configuring Node Manager to run as an inetd or xinetd service, the following considerations apply:</span></p>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Ensure that NodeManagerHome and other system properties are defined.</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">If xinetd is configured with libwrap, you should add the NOLIBWRAP flag.</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Ensure that the hosts.deny and hosts. allow files are configured correctly.</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Depending on your network environment, additional configuration may be necessary.</span></li>
</ul>
<p style="text-align: justify;"><span style="color: #000000;">The following example shows how the Node Manager can be configured within xinetd:</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em># default: off</em></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em># description:nodemanager as a service</em></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em>service nodemgrsvc</em></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em>{</em></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em>type&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = UNLISTED</em></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em>disable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = no</em></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em>socket_type&nbsp;&nbsp;&nbsp;&nbsp; = stream</em></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em>protocol&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = tcp</em></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em>wait&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = yes</em></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em>user&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = &lt;username&gt;</em></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em>port&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 5556</em></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em>flags&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = NOLIBWRAP</em></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em>log_on_success += DURATION HOST USERID</em></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em>server&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= &lt;path-to-jave&gt;/java</em></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em>env&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = CLASSPATH=&lt;cp&gt; LD_LIBRARY_PATH=&lt;ldpath&gt;</em></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em>server_args&nbsp;&nbsp;&nbsp;&nbsp; = -client -DNodeManagerHome=&lt;NMHome&gt; &lt;java options&gt; &lt;nodemanager options&gt; weblogic.NodeManager -v</em></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em>}</em></span></p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Configuring Script-Based Node Manager</strong></span></h2>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Overview:</strong></span></h3>
<ul style="text-align: justify;">
<li><span style="color: #000000;">The SSH Node Manager is a shell script, wlscontrol.sh, located in WL_HOME/common/bin/. The wlscontrol.sh file must exist on each machine that hosts server instances that you want to control with Node Manager. This script can be customized to meet site-specific requirements.</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">You must have an SSH client executable on each machine where the Node Manager or a Node Manager client runs. This script must also be in the path of the user-id running it. Typically, an SSH client is a standard part of a UNIX or Linux installation.</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Configuration tasks for Script-based Node Manager include:</span></li>
</ul>
<p style="text-align: justify;"><span style="color: #000000;">&ndash; Using SSL With Script-based Node Manager</span></p>
<p style="text-align: justify;"><span style="color: #000000;">&ndash; Creating a Node Manager User</span></p>
<p style="text-align: justify;"><span style="color: #000000;">&ndash; Configuring Script-based Node Manager Security</span></p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Using SSL with Script-based NM</strong></span></h2>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Script-based Node Manager communicates with Administration Servers and Managed Servers using one-way SSL.</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">The default WLS installation includes demonstration Identity and Trust keystores that allow SSL to be used out of the box.</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">To configure SSL for the production environment, identity and trust must be obtained for the Node Manager, the Administration Server, and all Managed Servers.</span></li>
</ul>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Creating a Node Manager User</strong></span></h2>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Before running, Node Manager, a dedicated UNIX user account &ndash; for performing Node Manager Functions &ndash; should be created.</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">This user should be added to all machines that will host the SSH Node Manager and to all machines that will host a Node Manager client, including the Administration Server.</span></li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Configuring Script-Based Node Manager Security</strong></span></h3>
<ul style="text-align: justify;">
<li><span style="color: #000000;">The Node Manager SSH shell script relies on SSH user-based security to provide a secure trust relationship between users on different machines.</span>
<ul>
<li><span style="color: #000000;">Authentication is not required.</span></li>
<li><span style="color: #000000;">You create a UNIX user account &ndash; typically one per domain &ndash; for running Node Manager Commands and scripts.</span></li>
</ul>
</li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">A user logged in as this user can issue Node Manager Commands without providing a username and password.</span></li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Summary:</strong></span></h3>
<ul>
<li style="text-align: justify;"><span style="color: #000000;">What is the Node Manager General Configurations</span></li>
<li style="text-align: justify;"><span style="color: #000000;">Configuring Java-Based Node Manager</span></li>
<li style="text-align: justify;"><span style="color: #000000;">Configuring Script-Based Node Manager.</span></li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Check out our Related Courses</strong> </span></h2>
<ul>
<li><a title="Weblogic Tutorials" href="tutorialsweblogic-tutorials-how-to" target="_blank" rel="noopener">Weblogic Tutorials</a></li>
<li><a title="Introduction to Clustering Weblogic" href="introduction-clustering-weblogic/" target="_blank" rel="noopener">Introduction to Clustering Weblogic</a></li>
<li><a title="Oracle Apex Training In Hyderabad" href="oracle-apex-training/" target="_blank" rel="noopener">Oracle Apex Training In Hyderabad</a></li>
<li><a title="Oracle Weblogic Server Installation" href="weblogic-server-installation/" target="_blank" rel="noopener">Oracle Weblogic Server Installation</a></li>
</ul>13:T4dbe,<p>&nbsp;</p>
<p>At the end of this chapter you will be able to:</p>
<ul>
<li><strong>Overview of the Node Manager</strong></li>
<li><strong>Versions of Node Manager</strong></li>
<li><strong>Accessing Node Manager</strong></li>
<li><strong>How Node Manager Works in the WebLogic Server Environment</strong></li>
<li><strong>Node Manager Configuration &amp; Log Files</strong></li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Overview:</strong> </span></h2>
<ul>
<li>Server instances in a WebLogic Server production environment are often distributed across multiple domains, machines, and geographic locations. Node Manager is a WebLogic Server utility that enables you to start, shut down, and restart Administration Server and Managed Server instances from a remote location. Although Node Manager is optional, it is recommended if your WebLogic Server environment hosts applications with high availability requirements.</li>
<li>A Node Manager process is not associated with a specific WebLogic domain but with a machine. You can use the same Node Manager process to control server instances in any WebLogic Server domain, as long as the server instances reside on the same machine as the Node Manager process. &nbsp;</li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Node Manager (NM):</strong></span></h2>
<ul>
<li>Lets you start and kill managed servers remotely: one server, a domain, a cluster</li>
<li>Is available as either a Java-based or (for UNIX or Linux) a script-based process.</li>
<li>Monitors and acts on server health</li>
<li>Runs on the same computers as the managed servers</li>
<li>Can be run automatically in the background, as a Windows service or a Unix daemon</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>What Node Manager Can Do</strong> </span></h3>
<p>Node Manager can be used to:</p>
<ul>
<li>Start, Shut Down, and Restart an Administration Server.</li>
<li>Start, Shut Down, Suspend, and Restart Managed Servers.</li>
<li>Automatically Restart Administration and Managed Servers on failure.</li>
<li>Monitor Servers and collects log data.</li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Node Manager Versions</strong> </span></h2>
<p>WebLogic Server provides two versions of Node Manager, Java-based and script-based, with similar functionality. However, each version has a different configuration and security considerations. &nbsp;</p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Java-based Node Manager</strong> </span></h2>
<ul>
<li>Java-based Node Manager runs within a Java Virtual Machine (JVM) process. It is recommended that you run it as a Windows service on Windows platforms and as an operating system service on UNIX platforms, allowing it to restart automatically when the system is rebooted.</li>
<li>This version of the Node Manager determines its configuration from the node manager.properties file. Java-based Node Manager provides more security than the script-based version. &nbsp;</li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Script-based Node Manager</strong> </span></h2>
<ul>
<li>For UNIX and Linux systems, WebLogic Server provides a script-based version of Node Manager. This script is based on UNIX shell scripts but uses SSH for increased security. SSH uses user-id based security.</li>
<li>This version does not provide as much security as the Java-based version. However, the advantage of the script-based Node Manager is that it can remotely manage servers over a network that has been configured to use SSH. No additional server installation is required. The scripts merely have to be copied to the remote machine.</li>
</ul>
<p><span style="color: #e03e2d;"> <strong>Note:</strong></span></p>
<p>It is recommended that you run a script-based Node Manager as an operating system service, which allows it to restart automatically when the system is rebooted. &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"> <strong>Determining Which Node Manager Version to Use</strong> </span></h3>
<p>Which version of Node Manager to use depends on the requirements of your WebLogic Server environment. The following considerations can help you decide which version is ideal for your environment:</p>
<ul>
<li>If you are installing WebLogic Server on a Windows system, you must use the Java version of Node Manager. The scripted version of the Node Manager is not supported on Windows.</li>
</ul>
<ul>
<li>In order to use db-less leasing (consensus leasing), you may see faster performance when using the Java version of Node Manager.</li>
</ul>
<ul>
<li>The script-based Node Manager requires a much simpler security configuration than the Java version. RSH and SSH are generally easier to configure than SSL which is the security method used by the Java version of Node Manager. The script version of the Node Manager also requires a smaller footprint than the Java version.</li>
</ul>
<ul>
<li>The Java version of Node Manager can be used in conjunction with inetd on supported UNIX systems. inetd allows Node Manager to be automatically restarted upon receiving requests on the configured port.</li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Accessing Node Manager</strong> </span></h2>
<p>A Node Manager client can be local or remote to the Node Managers with which it communicates. You access either version of Node Manager&mdash;the Java version or the script-based (SSH) version&mdash;from the following clients: &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Administration Server</strong></span></h3>
<ul>
<li>Administration Console, from the Environments&rarr;Machines&rarr;Configuration&rarr;Node Manager page.</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>WLST commands and scripts</strong> </span></h3>
<p>WLST offline serves as a Node Manager command-line interface that can run in the absence of a running Administration Server. You can use WLST commands to start, stop, and monitor a server instance without connecting to an Administration Server. Starting the Administration Server is the main purpose of the stand-alone client. However, you can also use WLST to:</p>
<ul>
<li>Stop a server instance that was started by Node Manager.</li>
<li>Start a Managed Server.</li>
<li>Access the contents of a Node Manager log file.</li>
<li>Obtain server status for a server that was started with Node Manager.</li>
<li>Retrieve the contents of the server output log.</li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>How Node Manager Works in the WebLogic Server Environment</strong> &nbsp; </span></h2>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Node Manager Architecture:</strong> </span></h3>
<p>The following diagram specifies the relationship between Node Manager, its clients, and the server instances it controls.</p>
<p><img class="alignnone wp-image-2422" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/854-460x289.png" alt="Node manager architecture" width="469" height="294" /></p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>How Node Manager Starts an Administration Server</strong></span></h3>
<p><img class="alignnone wp-image-2423" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/863-460x254.png" alt="Node manager" width="442" height="243" /></p>
<ol>
<li>An authorized user issues the WLST offline command, nmConnect to connect to the Node Manager process on the machine that hosts the Administration Server, and issues a command to start the Administration Server. The start command identifies the domain and server instance to start, and in the case of the Java Node Manager, provides the Node Manager username and password.</li>
</ol>
<p><span style="color: #e03e2d;"><strong>Note:</strong> </span>If the user has previously connected to the Node Manager, a boot.properties file exists, and the user does not have to supply a username and password.</p>
<p>2 &amp; 3. Node Manager looks up the domain directory in nodemanager.domains and authenticates the user credentials using a local file that contains the encrypted username and password.</p>
<ul>
<li>Node Manager creates the Administration Server process.</li>
</ul>
<ul>
<li>The Administration Server obtains the domain configuration from its config directory.</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>How Node Manager Starts a Managed Server</strong></span></h3>
<p><img class="alignnone wp-image-2424" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/874-460x265.png" alt="Node manager" width="460" height="264" /></p>
<ol>
<li>From the Administration Console, the user issues a start command for MS 1.</li>
</ol>
<p>Note: A stand-alone client can also issue a start command for a Managed Server.</p>
<ol start="2">
<li>The Administration Server issues a start command for Managed Server 1 to the Node Manager on Machine B, providing the remote start properties configured for MS 1.</li>
</ol>
<ol start="3">
<li>Node Manager starts Managed Server 1.</li>
</ol>
<p>Node Manager starts the Managed Server using the same root directory where the Node Manager process is running. To run the Managed Server in a different directory, set the Root Directory attribute in the Server&mdash;&gt;Configuration&mdash;&gt;Server Start console page.</p>
<ol start="4">
<li>Managed Server 1 contacts the Administration Server to check for updates to its configuration information.</li>
</ol>
<ol start="5">
<li>If there are outstanding changes to the domain configuration, Managed Server 1 updates its local cache of configuration data.</li>
</ol>
<h3><span style="font-size: 12pt;"><strong>How Node Manager Restarts an Administration Server</strong></span></h3>
<p><img class="alignnone wp-image-2431" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/884-460x273.png" alt="Node manager" width="425" height="252" /></p>
<ol>
<li>Node Manager determines from the Administration Server process exit code that it requires a restart.</li>
</ol>
<ol start="2">
<li>Node Manager obtains the username and password for starting the Administration Server from the boot.properties file, and the server startup properties from the &lt;server_name&gt;/data/nodemanager/startup.properties file.</li>
</ol>
<ol start="3">
<li>Node Manager starts the Administration Server.</li>
</ol>
<ol start="4">
<li>The Administration Server reads its configuration data and starts up.</li>
</ol>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>How Node Manager Restarts a Managed Server</strong></span></h3>
<p><img class="alignnone wp-image-2432" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/894-460x269.png" alt="Node manager" width="456" height="266" /></p>
<ol>
<li>Node Manager determines from Managed Server 1&rsquo;s last known state that it requires restarting.</li>
</ol>
<ol start="2">
<li>Node Manager obtains the username and password for starting Managed Server 1 from the boot.properties file, and the server startup properties from the startup.properties file. These server-specific files are located in the server directory for Managed Server 1.</li>
</ol>
<ol start="3">
<li>Node Manager starts Managed Server 1.</li>
</ol>
<p>Note: Node Manager waits for RestartDelaySeconds after a server instance fails before attempting to restart it.</p>
<ol start="4">
<li>Managed Server 1 attempts to contact the Administration Server to check for updates to its configuration data. If it contacts the Administration Server and obtains updated configuration data, it updates its local cache of the config directory.</li>
</ol>
<ol start="5">
<li>If Managed Server 1 fails to contact the Administration Server, and if Managed Server Independence mode (MSI) is enabled, Managed Server 1 uses its locally cached configuration data.</li>
</ol>
<p><span style="color: #e03e2d;"><strong>Note:</strong></span> Managed Server Independence mode is enabled by default</p>
<p><img class="alignnone wp-image-2433" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/904-460x295.png" alt="Node manager" width="452" height="289" /></p>
<ol>
<li>Through the Administration Console, an authorized user issues a shutdown command for Managed Server 1.</li>
</ol>
<ol start="2">
<li>The Administration Server issues the shutdown command directly to Managed Server 1. If it successfully contacts Managed Server 1, Managed Server 1 performs the shutdown sequence described in &ldquo;Graceful Shutdown&rdquo; in Managing Server Startup and Shutdown.</li>
</ol>
<ol start="3">
<li>If in the previous step, the Administration Server failed to contact Managed Server 1, it issues a shutdown command for Managed Server 1 to Node Manager on Machine B.</li>
</ol>
<ol start="4">
<li>Node Manager issues a request to the operating system to kill Managed Server</li>
</ol>
<ol start="5">
<li>The operating system ends the Managed Server 1 process.</li>
</ol>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Node Manager Configuration Files</strong></span></h2>
<p>Except where noted, configuration files apply to both Java-based and script-based Node Manager.</p>
<p><strong>&nbsp;<img class="alignnone wp-image-2434" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/917-460x261.png" alt="Node manager configuration" width="461" height="261" /></strong></p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>nodemanager.properties</strong> </span></h3>
<p>This is the configuration file used by the Java-based version of Node Manager. This file is located in WL_HOME/common/nodemanager, where WL_HOME is the location in which you installed WebLogic Server.</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"> <strong>nodemanager.domains</strong> </span></h3>
<p>This file contains mappings between the names of domains managed by Node Manager and their corresponding directories. This file is located in WL_HOME/common/nodemanager. &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>nm_data.properties</strong> </span></h3>
<p>This file stores the encryption data the Node Manager uses as an asymmetric encryption key. The data is stored in encrypted form. This file is located in WL_HOME/common/nodemanager. &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>nm_password.properties</strong> </span></h3>
<p>This file stores the Node Manager username and password. This file is located in DOMAIN_HOME/config/nodemanager. &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>boot.properties</strong> </span></h3>
<p>Node Manager uses this file to specify user credentials when starting a server. This file is located in DOMAIN_HOME/servers/&lt;server_name&gt;/data/nodemanager. &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"> <strong>startup.properties</strong></span></h3>
<ul>
<li>Each Managed Server instance has its own startup.properties file with properties that control how Node Manager starts up and controls the server. Node Manager automatically creates this file by using properties passed to Node Manager when the Administration Server was last used to start the server. This allows a Node Manager client or startup scripts to restart a Managed Server using the same properties last used by the Administration Server.</li>
<li>These properties correspond to the server startup attributes contained in ServerStartMBean and the health monitoring attributes in ServerStartMBean.</li>
<li>This file is located in DOMAIN_HOME/servers/&lt;server_name&gt;/data/nodemanager. &nbsp;</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>server_name.addr</strong> </span></h3>
<ul>
<li>server_name.addr stores the IP address added when a server starts or is migrated. This file is generated after the server IP address is successfully brought online during the migration. Server_name.addr is deleted when the IP address is brought offline. The server IP address is used to validate remove requests to prevent addresses from being erroneously removed while shutting down the server.</li>
<li>This file is located in DOMAIN_HOME/servers/&lt;server_name&gt;/data/nodemanager. <strong>&nbsp;</strong></li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>server_name.lck</strong> </span></h3>
<ul>
<li>server_name.lck is generated by each server and contains an internally used lock ID.</li>
<li>This file is located in DOMAIN_HOME/servers/&lt;server_name&gt;/data/nodemanager &nbsp;</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>server_name.pid</strong> </span></h3>
<ul>
<li>server_name.pid is generated by each server and contains the process ID of the server. Node Manager checks the process ID generated by the server during crash recovery.</li>
<li>This file is located in DOMAIN_HOME/servers/&lt;server_name&gt;/data/nodemanager &nbsp;</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>server_name.state</strong> </span></h3>
<ul>
<li>server_name.state is generated by the server and contains the server&rsquo;s current state. Node Manager monitors the contents of this file to determine the current state of the server.</li>
</ul>
<p><span style="color: #e03e2d;"><strong>Note:</strong></span> Do not delete or alter this file. Without this file, the Node Manager cannot determine the current state of the server.</p>
<ul>
<li>This file is located in DOMAIN_HOME/servers/&lt;server_name&gt;/data/nodemanager. &nbsp;</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"> <strong>Node Manager Log Files</strong> </span></h3>
<p>Use the Node Manager and WebLogic Server log files to help troubleshoot problems in starting or stopping individual Managed Servers. &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"> <strong>Node Manager Log File</strong></span></h3>
<p>NodeManagerHome/nodemanager.log, where NodeManagerHome is WL_HOME/common/nodemanager &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Node Manager Server Instance Log Files</strong> </span></h3>
<p>DOMAIN_HOME/servers/&lt;server_name&gt;/logs/&lt;server_name&gt;.out, where DOMAIN_HOME is the location in which you installed your WebLogic Server domain, such as d:beauser_projectsdomains&lt;domain-name&gt; &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"> <strong>Web Logic Server Log Files</strong> </span></h3>
<p>DOMAIN_HOME/servers/&lt;server_name&gt;/logs/&lt;server_name&gt;.log <strong>&nbsp;</strong></p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Summary:</strong></span></h3>
<ul>
<li><strong>Overview of the Node Manager</strong></li>
<li><strong>Versions of Node Manager</strong></li>
<li><strong>Accessing Node Manager</strong></li>
<li><strong>How Node Manager Works in the WebLogic Server Environment</strong></li>
<li><strong>Node Manager Configuration &amp; Log Files</strong></li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Check out our Related Courses</strong></span></h2>
<ul>
<li><a title="Weblogic Tutorials" href="tutorialsweblogic-tutorials-how-to" target="_blank" rel="noopener">Weblogic Tutorials</a></li>
<li><a title="Introduction to Clustering Weblogic" href="introduction-clustering-weblogic/" target="_blank" rel="noopener">Introduction to Clustering Weblogic</a></li>
<li><a title="Oracle Apex&nbsp; Training In Hyderabad" href="oracle-apex-training/" target="_blank" rel="noopener">Oracle Apex&nbsp; Training In Hyderabad</a></li>
<li><a title="Oracle Weblogic Server Installation" href="weblogic-server-installation/" target="_blank" rel="noopener">Oracle Weblogic Server Installation</a></li>
</ul>14:T6c07,<p>At the end of this chapter you will be able to:</p>
<ul>
<li>What is a Domain and Organizing the Domains</li>
<li>Contents of a Domain and Domain Restrictions</li>
<li>Configuring the Domain by using the Configuration Wizard</li>
<li>Describe how the domain works and Domain Directory Structure</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>What Is a Domain?</strong></span></h3>
<p>A WebLogic Server administration domain is a logically related group of WebLogic Server resources. Domains include a special WebLogic Server instance called the Administration Server, which is the central point from which you configure and manage all resources in the domain. Usually, you configure a domain to include additional WebLogic Server instances called Managed Servers. You deploy Web applications, EJBs, Web Services, and other resources onto the Managed Servers and use the <a href="https://tekslate.com/system-administration-tools/" target="_blank" rel="noopener">Administration Server</a> for configuration and management purposes only.</p>
<p><img class="alignnone wp-image-2299" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/364-460x192.png" alt="Weblogic - Domain structure" width="487" height="203" /> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Organizing Domains:</strong> </span></h3>
<p>You can use a single WebLogic Server installation to create and run multiple domains, or you can use multiple installations to run a single domain. Depending on your particular business needs and system administration practices, you might decide to organize your domains based on criteria such as:</p>
<ul>
<li><em>Logical division of applications.</em> For example, you might have one domain devoted to end-user functions such as shopping carts and another domain devoted to back-end accounting applications.</li>
</ul>
<ul>
<li><em>Physical location.</em> You might establish separate domains for different locations or branches of your business. Each physical location requires its own WebLogic Server installation.</li>
</ul>
<ul>
<li>You might find that domains organized in small units can be managed more efficiently, <em>perhaps</em> by different system administrators. Contrarily, you might find that maintaining a single domain or a small number of domains makes it easier to maintain a consistent configuration.</li>
</ul>
<p>For development or test environments, you can create a simple domain that consists of a single server instance. This single instance acts as an Administration Server and hosts the applications that you are developing. The wl_server domain that you can install with WebLogic Server is an example of this type of domain. &nbsp;</p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Domain Overview</strong></span></h2>
<p><img class="alignnone wp-image-2300" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/375-460x281.png" alt="Domain Overview" width="500" height="305" /></p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Contents of a Domain:</strong> </span></h2>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>1) Administration Server:</strong> </span></h3>
<p>The Administration Server operates as the central control entity for the configuration of the entire domain. It maintains the domain&rsquo;s configuration documents and distributes changes in the configuration documents to Managed Servers. You can also use the Administration Server as a central location from which to monitor all resources in a domain. <em>Admin Clients: To interact with the Administration Server, you can use the Administration Console, WLST, or create your own JMX client.</em> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>2) Managed Servers and Managed Server Clusters:</strong> </span></h3>
<p>Managed Servers host business applications, application components, Web Services, and their associated resources. To optimize performance, Managed Servers maintain a read-only copy of the domain's configuration document. When a Managed Server starts up, it connects to the domain's Administration Server to synchronize its configuration document with the document that the Administration Server maintains. For production environments that require increased application performance, throughput, or high availability, you can configure two or more Managed Servers to operate as a cluster. A cluster is a collection of multiple WebLogic Server instances running simultaneously and working together to provide increased scalability and reliability. &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>3) Resources and Services</strong> </span></h3>
<p>In addition to the Administration Server and Managed Servers, a domain also contains the resources and services that Managed Servers and deployed applications require. &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"> <strong>Managed Servers can use the following resources:</strong></span></h3>
<ul>
<li>Machine definitions that identify a particular, physical piece of hardware. A machine definition is used to associate a computer with the Managed Servers it hosts. This information is used by Node Manager in restarting a failed Managed Server, and by a clustered Managed Server in selecting the best location for storing replicated session data.</li>
</ul>
<ul>
<li>Network channels that define default ports, protocols, and protocol settings that a Managed Server uses to communicate with clients. After creating a network channel, you can assign it to any number of Managed Servers and clusters in the domain.</li>
</ul>
<ul>
<li>Virtual hosting, which defines a set of hostnames to which WebLogic Server instances (servers) or clusters respond. When you use virtual hosting, you use DNS to specify one or more hostnames that map to the IP address of a server or cluster. You also specify which Web applications are served by each virtual host.</li>
</ul>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Applications can use the following resources and services:</strong> </span></h3>
<p>Security providers, which are modular components that handle specific aspects of security, such as authentication and authorization.</p>
<ul>
<li>Resource adapters, which are system libraries specific to Enterprise Information Systems (EIS), and provide connectivity to an EIS.</li>
</ul>
<ul>
<li>Diagnostics and monitoring services.</li>
</ul>
<ul>
<li>JDBC data sources, which enable applications to connect to databases.</li>
</ul>
<ul>
<li>XML entity caches and registry of XML parsers and transformer factories.</li>
</ul>
<ul>
<li>Messaging services such as JMS servers and store-and-forward services.</li>
</ul>
<ul>
<li>Startup classes, which are Java programs that you create to provide custom, system-wide services for your applications.</li>
</ul>
<ul>
<li>Work Managers, which determine how an application prioritizes the execution of its work based on rules you define and by monitoring actual run-time performance. You can create Work Managers for entire WebLogic Server domains or for specific application components.</li>
</ul>
<ul>
<li>Work Contexts, which enable applications to pass properties to a remote context without including the properties in a remote call.</li>
</ul>
<p><em>Note: All managed servers in a domain must run the same version of WebLogic Server. The administration server can run either the same version as the managed servers in the domain or a later service pack.</em> &nbsp;</p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Domain Restrictions:</strong></span></h2>
<p>In designing your domain configuration, note the following restrictions:</p>
<ul>
<li>Each domain requires its own <em>Administration Server</em> for performing management activities. When you use the Administration Console to perform management and monitoring tasks, you can switch back and forth between domains, but in doing so, you are connecting to different Administration Servers.</li>
</ul>
<ul>
<li>All Managed Servers in a cluster must reside in the same domain; you cannot split a cluster over multiple domains.</li>
</ul>
<ul>
<li>All Managed Servers in a domain must run the same version of the WebLogic Server software. The Administration Server may run either the same version as the Managed Servers in the domain or a later service pack.</li>
</ul>
<ul>
<li>If you have created multiple domains, each domain must reference its own database schema. You cannot share a configured resource or subsystem between domains. For example, if you create a JDBC data source in one domain, you cannot use it with a Managed Server or cluster in another domain. Instead, you must create a similar data source in the second domain. Furthermore, two or more system resources cannot have the same name.</li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Common Domain Configurations</strong> </span></h2>
<p>You might find it useful to configure multiple domains based on specific criteria, such as system administrator responsibilities, the logical classification of applications, the geographical locations of servers, or size. The following table outlines the most common domain configurations. <em>1) Domain with managed servers:</em> In typical production environments, several managed servers can host applications, and an administration server performs management operations. <em>2) Domain with managed servers and clusters: </em>In production environments that require increased performance, throughput, or availability for an application, several managed servers might be grouped in a cluster. In such a case, the domain consists of one or more clusters with the applications they host, additional managed servers, if necessary, and an administration server to perform management operations. <em>3) Stand-alone Server Domain:</em> In development or test environments, a single application and server might be deployed independently without managed servers. In such a case, you can have a domain consisting of a single administration server that also hosts the applications you want to test or develop. &nbsp; <em>Note: In production environments, it is recommended that you deploy applications only on managed servers; the administration server should be reserved for management tasks.</em> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Overview of the Configuration Wizard:</strong> </span></h3>
<p>Before you can develop and run a WebLogic application, you must first create a domain. The Configuration Wizard (illustrated in Figure 1-2), simplifies the process of creating and extending a domain. To create or extend a domain by using the Configuration Wizard, you simply select the product components to be included in the domain (or choose a template that best meets your requirements) and provide basic configuration information. The Configuration Wizard then creates or extends the domain by using the settings from templates. <img class="alignnone wp-image-2303" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/385.png" alt="Configuration Wizard" width="486" height="290" /> &nbsp;</p>
<p>After you create a domain by using the Configuration Wizard, you can start a WebLogic Server instance to run in the domain for developing, testing, and deploying applications. &nbsp;</p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Creating a Domain</strong> </span></h2>
<p>You might want to customize your domain in the following circumstances:</p>
<ul>
<li>To create a multi-server or clustered domain when you are using the default settings. All the predefined templates delivered with the product create single-server domains.</li>
<li>To use a database that is different from the default database in the domain or extension template. In this case, you need to customize the JDBC settings to point to the appropriate database.</li>
</ul>
<ul>
<li>To customize the listen port and the SSL port</li>
</ul>
<ul>
<li>To create a test environment using a domain template that you received, and to modify the domain configuration to work in the test environment based on your requirement.</li>
</ul>
<p>&nbsp; <img class="alignnone wp-image-2305" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/395-460x396.png" alt="Creating a domain" width="472" height="406" /></p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Extending a Domain</strong> </span></h2>
<ul>
<li>You can extend an existing domain by adding predefined applications and services, or additional product component functionality. For example, if you created a base WebLogic Server domain and want to add Workshop, you can extend the domain by using the Workshop extension.</li>
<li>To extend a domain by using the Configuration Wizard, select the domain that you want to extend and then select the additional product component. Alternatively, you can extend an existing domain by specifying an extension template to include additional applications and services. You can also customize the JDBC connections and change the JMS file store. The Configuration Wizard uses your input to update the configuration files, such as config.xml, and all other generated components in the domain directory, as required.</li>
<li>Figure 1-4 summarizes the steps for extending a domain by using the Configuration Wizard</li>
</ul>
<p>. <img class="alignnone wp-image-2307" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/404-460x308.png" alt="Extending a domain" width="477" height="318" /></p>
<p>&nbsp;</p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Starting the Configuration Wizard:</strong> </span><strong>&nbsp;</strong></h2>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>Starting in Graphical Mode</strong> </span><strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </strong></h3>
<p>You can start the Configuration Wizard in graphical mode from either the Windows Start menu or from the command line. <strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </strong><em>Note: If you attempt to start the Configuration Wizard in graphical mode on a system that cannot support graphical display, the Configuration Wizard automatically starts in console mode.</em></p>
<ul>
<li>To start the Configuration Wizard in graphical mode on a Windows platform, choose Start &gt; Programs &gt; Oracle WebLogic &gt; WebLogic Server 10.3 &gt; Tools &gt; Configuration Wizard.</li>
</ul>
<ul>
<li>To start the Configuration Wizard in graphical mode from a Windows command prompt or on a UNIX platform:</li>
</ul>
<ol>
<li>a) Open an MS-DOS command prompt window (on Windows) or a command shell (on UNIX).</li>
<li>b) Go to the commonbin subdirectory of the product installation directory and execute the following command:</li>
</ol>
<p><em>On Windows: config.cmd</em> <em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </em></p>
<p><em>On UNIX: sh config.sh</em> &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>S</strong><strong>tarting in Console Mode:</strong> </span></h3>
<ul>
<li>When run in console mode, the Configuration Wizard is executed in a text-based environment. To start the Configuration Wizard in console mode:</li>
</ul>
<p>1. Open an MS-DOS command prompt window (on Windows) or a command shell (on UNIX).</p>
<p>2. Go to the commonbin subdirectory of the product installation directory.</p>
<p>3. Execute the following command:</p>
<p><em>&ndash; Windows: config.cmd -mode=console</em> <em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</em></p>
<p><em> </em><em>&ndash; UNIX: sh config.sh -mode=console</em></p>
<p><em>Note: The command and arguments must be entered in lower case.</em></p>
<p>The Welcome screen is displayed.</p>
<ul>
<li>To proceed, respond to the prompts by entering the number associated with your choice, pressing Enter. The arrow (-&gt;) adjacent to a choice indicates the current selection.</li>
<li><em>To accept the current selection, type next (or n) and press Enter.</em></li>
<li><em>To close the Configuration Wizard, enter Exit (or x) and press Enter.</em></li>
<li><em>To review or change earlier selections, enter Previous (or p) and press Enter.</em> <em>&nbsp;</em></li>
</ul>
<p><strong><span style="color: #e03e2d;">Note:</span></strong><em> silent mode is deprecated in WebLogic Server 9.X</em></p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Creating a WebLogic Domain</strong></span></h2>
<p>The Configuration Wizard guides you through the process of creating a new domain quickly and easily, by selecting the product components that you want to include in your domain, or by using domain templates.</p>
<p>1. <span style="color: #e03e2d;"><strong>Start the Configuration Wizard</strong></span> as described in Starting the Configuration Wizard. The Welcome window is displayed</p>
<p><img class="alignnone wp-image-2309" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/419.png" alt="Weblogic configuration" width="460" height="310" /></p>
<ol start="2">
<li>Select <span style="color: #e03e2d;"><strong>create a new WebLogic domain</strong></span> and click Next.</li>
</ol>
<p><img class="alignnone wp-image-2311" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/425.png" alt="Weblogic configuration" width="493" height="355" /></p>
<p>3. Select Generate a domain configured automatically to support the following products: <span style="color: #e03e2d;"><strong>WebLogic Server is selected</strong></span>, by default. Select the checkboxes corresponding to the other products that you want to include in the</p>
<p><img class="alignnone wp-image-2313" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/435.png" alt="Weblogic configuration" width="482" height="347" /></p>
<p>4) Click Next. The Configure Administrator Username and Password window are displayed and configure the <span style="color: #e03e2d;"><strong>username and password for the administrator</strong>:</span> <img class="alignnone wp-image-2316" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/456.png" alt="Weblogic configuration" width="519" height="378" /></p>
<p>5) Select the<span style="color: #e03e2d;"> <strong>WebLogic domain startup mode</strong>:</span></p>
<ul>
<li>In the development mode, the configuration of security is relatively relaxed, allowing you to auto-deploy applications.</li>
<li>In the production model, the configuration of security is stringent, requiring a user name and password to deploy applications. Before putting a domain into production, familiarize yourself with securing the production environment.</li>
</ul>
<p><strong><span style="color: #e03e2d;">Select the JDK</span>: </strong>In the JDK Selection pane, select the JDK for the startup mode that you selected in the WebLogic Domain Startup Mode pane. The Configuration Wizard presents a list of the JDKs included in the installer. You can choose one of these JDKs or another JDK that you have installed on your system.</p>
<p>Click next then The Customize Environment and Services Settings window is displayed.</p>
<p><img class="alignnone wp-image-2318" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/467-460x331.png" alt="Weblogic configuration" width="505" height="362" /></p>
<p>6) Customizing the Environment and Service Settings&hellip; While creating the domain, you can specify the <span style="color: #e03e2d;"><strong>RDBMS security store settings</strong>,</span> configure the distribution of your domain across servers, clusters, and machines, specify JDBC data sources, define JMS file store settings. Select Yes and click on Next. &nbsp;</p>
<p><strong>7)<span style="color: #e03e2d;"> Configure the Administration Server and Managed Servers</span></strong></p>
<p><img class="alignnone wp-image-2320" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/476-460x294.png" alt="Weblogic configuration" width="473" height="301" /></p>
<p><img class="alignnone wp-image-2321" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/485-460x259.png" alt="Weblogic configuration" width="498" height="279" /></p>
<p><img class="alignnone wp-image-2323" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/495.png" alt="Weblogic configuration" width="496" height="358" /></p>
<p><strong>8) <span style="color: #e03e2d;">Configure Clusters</span></strong></p>
<p><img class="alignnone wp-image-2324" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/506-460x331.png" alt="Weblogic configuration" width="491" height="352" /></p>
<p><strong>9) <span style="color: #e03e2d;">Assign Servers to Clusters</span></strong></p>
<p><img class="alignnone wp-image-2327" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/5110-460x331.png" alt="Weblogic configuration" width="486" height="348" /></p>
<p><strong>10)<span style="color: #e03e2d;"> Configure Machines</span></strong></p>
<p><img class="alignnone wp-image-2328" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/524-460x330.png" alt="Weblogic configuration" width="445" height="319" /></p>
<p><strong>11) <span style="color: #e03e2d;">Assign Servers to Machines</span></strong></p>
<p><img class="alignnone wp-image-2329" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/534.png" alt="Weblogic configuration" width="493" height="355" /></p>
<p>12) Enter the <span style="color: #e03e2d;"><strong>name of the domain </strong></span>and specify the domain location.</p>
<p>13) <strong>Click Create.</strong></p>
<p><span style="color: #e03e2d;"><strong>Note:</strong></span><em> You cannot overwrite an existing domain. If a domain with the name you specified already exists in the selected location, you must either delete the existing domain or specify a different name or location for the new domain.</em> <strong>&nbsp;</strong></p>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Domain Directory Contents</strong> </span></h2>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>1) domain-name</strong> </span></h3>
<p>The name of this directory is the name of the domain.</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>2) autodeploy</strong> </span></h3>
<p>This directory provides a quick way to deploy applications in a development server. When the WebLogic Server instance is running in development mode, it automatically deploys any applications or modules that you place in this directory. The files you place in this directory can be Java EE applications, such as: An EAR file, A WAR, EJB JAR, RAR archived module.</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>3) bin</strong> </span></h3>
<p>This directory contains scripts that are used in the process of starting and stopping the Administration Server and the Managed Servers in the domain. These scripts are generally provided as .sh files for UNIX and .cmd files for Windows. The bin directory can optionally contain other scripts of domain-wide interest, such as scripts to start and stop database management systems, full-text search engine processes, etc.</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"> <strong>4) config</strong> </span></h3>
<p>This directory contains the current configuration and deployment state of the domain. The central domain configuration file, config.xml, resides in this directory.</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>5) console-ext:</strong></span></h3>
<p><strong> </strong> This directory contains extensions to the Administration Console, which enable you to add content to the WebLogic Server Administration Console, replace content, and change the logos, styles, and colors without modifying the files that are installed with WebLogic Server. For example, you can add content that provides custom monitoring and management facilities for your applications.</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>6) init-info</strong></span></h3>
<p>This directory contains files used for WebLogic domain provisioning. You should not modify any files in this directory.</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"> <strong>7) lib</strong></span></h3>
<p>Any JAR files you put in this directory are added to the system classpath of each server instance in the domain when the server&rsquo;s Java virtual machine starts.</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"> <strong>8) Pending</strong> </span></h3>
<p>This directory contains domain configuration files representing configuration changes that have been requested, but not yet activated. Once the configuration changes have been activated, the configuration files are deleted from this directory.</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>9) Security:</strong> </span></h3>
<p>This directory holds those security-related files that are the same for every WebLogic Server instance in the domain: <em>&nbsp;SerializedSystemIni.dat</em> This directory also holds security-related files that are only needed by the domain&rsquo;s Administration Server: <em>DefaultAuthorizerInit.ldift, DefaultAuthenticatorInit.ldift, </em> <em>DefaultRoleMapperInit.ldift</em></p>
<h3><span style="font-size: 12pt; color: #e03e2d;"> <strong>10) Servers</strong> </span></h3>
<p>This directory contains one subdirectory for each WebLogic Server instance in the domain. The subdirectories contain data that is specific to each server instance.</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>11) tmp</strong> </span></h3>
<p>This directory stores temporary files used in the change management process. You should not modify any files in this directory.</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"><strong>12) User_staged_config:</strong></span></h3>
<p>By default, configuration information is automatically copied from the Administration Server to each Managed Server. If instead, you prefer to stage configuration changes manually, you can use this directory as an alternative to the config directory. &nbsp;</p>
<h3><span style="font-size: 12pt; color: #e03e2d;"> <strong>Summary:</strong></span></h3>
<ul>
<li>What is a Domain and Organizing the Domains</li>
<li>Contents of a Domain and Domain Restrictions</li>
<li>Configuring the Domain by using the Configuration Wizard</li>
<li>Describe how the domain works and Domain Directory Structure</li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Check out our Related Courses</strong> </span></h2>
<ul>
<li><a title="Weblogic Tutorials" href="tutorialsweblogic-tutorials-how-to" target="_blank" rel="noopener">Weblogic Tutorials</a></li>
<li><a title="Introduction to Clustering Weblogic" href="introduction-clustering-weblogic/" target="_blank" rel="noopener">Introduction to Clustering Weblogic</a></li>
<li><a title="Oracle Apex Training In Dallas" href="oracle-apex-training/" target="_blank" rel="noopener">Oracle Apex Training In Dallas</a></li>
<li><a title="Oracle Weblogic Server Installation" href="weblogic-server-installation/" target="_blank" rel="noopener">Oracle Weblogic Server Installation</a></li>
</ul>15:T4ae,<ul>
<li><span style="color: #000000;"><a style="color: #000000;" href="#weblogic-server">What is WebLogic Server?</a></span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#server-versions">Oracle Weblogic Server Versions</a></span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#server-components">WebLogic Server Components</a></span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#server-system-administration">WebLogic Server System Administration</a></span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#component-tiers">Software Component Tiers</a></span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#webserver">The Web Server</a></span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#application-server">The Application Server</a></span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#application-vs-web-server">Application Server Vs Web Server</a></span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#j2ee-weblogic-server">J2EE Platform and WebLogic Server</a></span></li>
</ul>16:T674c,<p style="text-align: justify;"><span style="color: #000000;">Welcome to the <strong>Weblogic Tutorial</strong>. The objective of these tutorials is to provide an in-depth understanding of the Weblogic Application Server.</span></p>
<p style="text-align: justify;"><span style="color: #000000;">In addition to free Weblogic Tutorials,&nbsp;we will also cover common&nbsp;interview questions, how-to tutorials and issues and their resolutions of Weblogic Application Server</span></p>
<table style="border-collapse: collapse; width: 100%; height: 120px;" border="1px" cellpadding="10">
<tbody>
<tr style="height: 37px; background-color: #ecf0f1; border-color: #ced4d9; border-style: solid;">
<td style="width: 98.3496%;">
<h3 style="text-align: center;"><strong><span style="font-size: 18px;">&nbsp;WebLogic Tutorial&nbsp;- Table of Contents</span></strong></h3>
</td>
</tr>
<tr style="height: 37px; border-color: #ced4d9; border-style: solid;">
<td style="width: 98.3496%;">
<ul>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#weblogic-server">What is WebLogic Server?</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#server-versions">Oracle Weblogic Server Versions</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#server-components">WebLogic Server Components</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#server-system-administration">WebLogic Server System Administration</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#component-tiers">Software Component Tiers</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#webserver">The Web Server</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#application-server">The Application Server</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#application-vs-web-server">Application Server Vs Web Server</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#j2ee-weblogic-server">J2EE Platform and WebLogic Server</a></span></li>
</ul>
</td>
</tr>
</tbody>
</table>
<h2 style="text-align: justify;"><span style="color: #e67e23; font-size: 24px;"><a id="weblogic-server"></a>What is WebLogic Server?</span></h2>
<p>Weblogic Server is a sort of server that backings different administrations and in addition find that are connected with JEE applications. WebLogic server is fit for conveying segments and in addition applications through WSDL, UDDI, and SOAP.</p>
<p>A Weblogic server gets designed as a web server by making utilization of HTTP audience for supporting the HTTP. Web servers like that of Apache, Netscape, and Microsoft are utilized.&nbsp; The design of a web server permits WebLogic is fit for giving administrations to dynamic and static demands that are normally produced by servlets, <span style="color: #236fa1;"><a style="color: #236fa1;" href="https://en.wikipedia.org/wiki/HTML" target="_blank" rel="nofollow">HTML</a></span>, and JSP.</p>
<p><span style="color: #000000;">Weblogic Server is a software product that acts as a liaison between the front end and back end applications. Weblogic Application Server is widely used for its JMS capabilities. Later in these sessions, we will learn in detail about Weblogic Installation, Security, JMS, and Clustering.</span></p>
<p><span style="color: #000000;">The following are the various Weblogic Server&nbsp;versions released from 2o02. The most recent version of Weblogic is 12c.</span></p>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 22px;"><a id="server-versions"></a>Oracle Weblogic Server Versions</span></h3>
<p style="text-align: justify;"><span style="color: #000000;">WebLogic Server 12c Release 3 (12.1.3) - June 26, 2014</span></p>
<p style="text-align: justify;"><span style="color: #000000;">WebLogic Server 12c Release 2 (12.1.2) - July 11, 2013</span></p>
<p style="text-align: justify;"><span style="color: #000000;">WebLogic Server 12c Release 1 (12.1.1) - Dec 1, 2011</span></p>
<p style="text-align: justify;"><span style="color: #000000;">WebLogic Server 11gR1 PS5 (10.3.6) - February 26, 2012</span></p>
<p style="text-align: justify;"><span style="color: #000000;">WebLogic Server 11gR1 PS4 (10.3.5) - May 16, 2011</span></p>
<p style="text-align: justify;"><span style="color: #000000;">WebLogic Server 11gR1 PS3 (10.3.4) - January 15, 2011</span></p>
<p style="text-align: justify;"><span style="color: #000000;">WebLogic Server 11gR1 PS2 (10.3.3) - April 2010</span></p>
<p style="text-align: justify;"><span style="color: #000000;">WebLogic Server 11gR1 PS1 (10.3.2) - Nov 2009</span></p>
<p style="text-align: justify;"><span style="color: #000000;">WebLogic Server 11g (10.3.1) - Jul 2009</span></p>
<p style="text-align: justify;"><span style="color: #000000;">WebLogic Server 10.3 - Aug 2008</span></p>
<p style="text-align: justify;"><span style="color: #000000;">WebLogic Server 10.0 - Mar 2007</span></p>
<p style="text-align: justify;"><span style="color: #000000;">WebLogic Server 9.2</span></p>
<p style="text-align: justify;"><span style="color: #000000;">WebLogic Server 9.1</span></p>
<p style="text-align: justify;"><span style="color: #000000;">WebLogic Server 9.0 - Nov 2006</span></p>
<p style="text-align: justify;"><span style="color: #000000;">WebLogic Server 8.1 - Jul 2003</span></p>
<p style="text-align: justify;"><span style="color: #000000;">WebLogic Server 7.0 - Jun 2002</span></p>
<table style="border-collapse: collapse; width: 100%; background-color: #ecf0f1; border-color: #ced4d9; border-style: solid; height: 69px;" border="1px" cellpadding="5">
<tbody>
<tr style="height: 69px;">
<td style="width: 98.3496%; text-align: center; height: 69px;"><em>Want to acquire industry skills and gain complete knowledge of WebLogic? Enrol in Instructor-Led live <strong><span style="color: #236fa1;"><a style="color: #236fa1;" title="WebLogic Training" href="https://tekslate.com/weblogic-server-administration-training" target="_blank">WebLogic Training</a></span></strong> to get Job Ready!</em></td>
</tr>
</tbody>
</table>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 20px;">Use of the WebLogic Server</span></h3>
<p style="text-align: justify;"><strong>WebLogic server</strong> is based on Java 2 Platform, Enterprise Edition (J2EE), the standard platform used to create Java-based multi-tier enterprise applications. <span style="color: #236fa1;"><a style="color: #236fa1;" title="J2EE Training" href="https://tekslate.com/j2ee-training/" target="_blank">J2EE</a></span> platform technologies were developed through the efforts of BEA Systems and other vendors in collaboration with the main developer, Sun Microsystems.</p>
<div id="nmtbi11" class="_qhf _grf nmiw nmtbi nmt nmtbia " style="text-align: justify;" data-hveid="92" data-ved="0ahUKEwiIibKLo83QAhWMRI8KHciFC9oQuk4IXCgA">
<div class="_eHi">
<h3 class="_rhf"><span style="color: #e67e23; font-size: 20px;">WebLogic 12c</span></h3>
</div>
</div>
<div id="nmtbi11cntw" class="nmcw nmbl nmca" style="text-align: justify;" data-hveid="93" data-ved="0ahUKEwiIibKLo83QAhWMRI8KHciFC9oQu04IXSgB">
<div id="nmtbi11cnt">
<div class="_Zjj">
<div class="mod" data-md="61">
<div class="_oDd" style="text-align: justify;" data-hveid="94"><span class="_Tgc _y9e">Oracle WebLogic Server 12c R2 is the industry's best application server for building and deploying enterprise Java EE applications with support for new features for lowering the cost of operations, improving performance, enhancing scalability, and supporting the Oracle Applications portfolio.</span></div>
<h3 class="_oDd" style="text-align: justify;" data-hveid="94"><span style="color: #e67e23; font-size: 20px;">Use of the Domain in WebLogic</span></h3>
</div>
</div>
</div>
</div>
<div class="_oDd" style="text-align: justify;" data-hveid="94">
<div id="nmtbi13cntw" class="nmcw nmbl nmca" data-hveid="101" data-ved="0ahUKEwiIibKLo83QAhWMRI8KHciFC9oQu04IZSgB">
<div id="nmtbi13cnt">
<div class="_Zjj">
<div class="mod" data-md="61">
<div class="_oDd" data-hveid="102"><span class="_Tgc _y9e">A WebLogic Domain is a logically related group of WebLogic Server instances (Admin + managed Servers)that you manage from a single set of configuration artefacts. A Weblogic Domain contains exactly one Administration Server and zero or more than zero managed Servers.</span></div>
<div class="_oDd" data-hveid="102">&nbsp;</div>
<div class="_oDd" data-hveid="102"><strong style="color: #e67e23; font-size: 22px;"><a id="server-components"></a>WebLogic Server Components</strong></div>
</div>
</div>
</div>
</div>
</div>
<p style="text-align: justify;"><span style="color: #000000;">Oracle WebLogic Server supports Oracle, DB2, MS SQL Server, MySQL Enterprise, and other JDBC-compliant databases. Oracle Weblogic Platform also includes:</span></p>
<ul>
<li><span style="color: #000000;">Core Components like Enterprise Grid Messaging, JMS Messaging Standard, JRockit, Oracle Top Link, Oracle WebLogic Server Web Services, Tuxedo</span></li>
<li><span style="color: #000000;">Supported open standards like <span style="color: #236fa1;"><a style="color: #236fa1;" title="Administering BPEL Process" href="https://tekslate.com/administering-bpel-process-service-components-engines/" target="_blank">BPEL</a></span> &amp; BPEL-J, ebXML, JAAS, Java EE 1.3 &amp; 1.4 &amp; 5, JPA 1.0 (2.0 available), JMX and SNMP</span></li>
<li><span style="color: #000000;">Native support for SOAP, UDDI, WSDL, WSRP, WS-Security, XSLT, and XQuery</span></li>
</ul>
<p style="text-align: justify;"><span style="font-size: 16px;"><em><span style="color: #000000;"><strong>Standards Supported by version</strong></span></em></span></p>
<p style="text-align: justify;"><span style="color: #000000;">The table below lists major standards supported by the WebLogic Server product version.</span></p>
<table style="border-collapse: collapse; width: 100%; height: 120px;" border="1px" cellpadding="10">
<tbody>
<tr>
<td style="width: 17.1922%;"><strong><span style="color: #000000;">Standard</span></strong></td>
<td style="width: 15.9159%;"><strong><span style="color: #000000;">WLS 7.0</span></strong></td>
<td style="width: 15.9159%;"><strong><span style="color: #000000;">WLS 8.1</span></strong></td>
<td style="width: 15.9159%;"><strong><span style="color: #000000;">WLS 9.0</span></strong></td>
<td style="width: 17.5676%;"><strong><span style="color: #000000;">WLS 10.0</span></strong></td>
<td style="width: 17.5676%;"><strong><span style="color: #000000;">WLS 10.3</span></strong></td>
</tr>
<tr>
<td style="width: 17.1922%;"><span style="color: #000000;">Java</span></td>
<td style="border-width: 1px; width: 15.9159%;"><span style="color: #000000;">1.3</span></td>
<td style="width: 15.9159%;"><span style="color: #000000;">1.4</span></td>
<td style="border-style: solid; width: 15.9159%;"><span style="color: #000000;">5</span></td>
<td style="width: 17.5676%;"><span style="color: #000000;">5</span></td>
<td style="width: 17.5676%;"><span style="color: #000000;">6</span></td>
</tr>
<tr>
<td style="width: 17.1922%;"><span style="color: #000000;">Java EE</span></td>
<td style="width: 15.9159%;"><span style="color: #000000;">1.3</span></td>
<td style="width: 15.9159%;"><span style="color: #000000;">1.3</span></td>
<td style="width: 15.9159%;"><span style="color: #000000;">1.4</span></td>
<td style="width: 17.5676%;"><span style="color: #000000;">5</span></td>
<td style="width: 17.5676%;"><span style="color: #000000;">5</span></td>
</tr>
</tbody>
</table>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 22px;"><a id="server-system-administration"></a>WebLogic Server System Administration</span></h3>
<p style="text-align: justify;"><span style="color: #000000;">System administration of WebLogic Server includes a wide range of tasks: creating WebLogic Server domains; deploying applications; migrating domains from development environments to production environments; monitoring and managing the performance of the run-time system; diagnosing and troubleshooting problems. (A WebLogic Server <strong>domain</strong> is a collection of WebLogic Server services designed for a specific purpose. For example, you might create one domain to provide an employee portal and another domain to provide business services to your customers.)</span></p>
<p style="text-align: justify;"><span style="color: #000000;">Because the WebLogic Server management system is based on Java EE and other standards, it integrates with systems that are frequently used to manage other software and hardware components. In addition, WebLogic Server includes several of its own standards-based, extensible utilities. Alternatively, you can use <span style="color: #236fa1;"><a style="color: #236fa1;" title="API Testing Training" href="https://tekslate.com/api-testing-training" target="_blank">API</a></span>s to create custom management utilities.</span></p>
<p style="text-align: justify;"><span style="color: #000000;">At the end of this module you will be able to:</span></p>
<ul>
<li style="text-align: justify;"><span style="color: #000000;">What is Software Component Tiers</span></li>
<li style="text-align: justify;"><span style="color: #000000;">The Web &amp; Application Server and Differences</span></li>
<li style="text-align: justify;"><span style="color: #000000;">J2EE Platform and WebLogic Server</span></li>
<li style="text-align: justify;"><span style="color: #000000;">Weblogic Server Versions &amp; Capabilities</span></li>
<li style="text-align: justify;">Weblogic Server Tutorial</li>
</ul>
<p><span style="font-size: 22px;"><strong><span style="color: #e67e23;"><a id="component-tiers"></a>Software Component Tiers</span></strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;">The software components of a multitier architecture consist of three tiers:</span></p>
<ul>
<li><span style="color: #000000;">The client tier contains programs executed by users, including Web browsers and network-capable application programs. These programs can be written in virtually any programming language.</span></li>
<li><span style="color: #000000;">The middle tier contains WebLogic Server and other servers that are addressed directly by clients, such as existing Web servers or proxy servers.</span></li>
<li><span style="color: #000000;">The backend tier contains enterprise resources, such as database systems, mainframe and legacy applications, and packaged enterprise resource planning (<span style="color: #236fa1;"><a style="color: #236fa1;" href="https://dynamics.microsoft.com/en-in/erp/what-is-erp/" target="_blank" rel="nofollow">ERP</a></span>) applications.</span></li>
</ul>
<p style="text-align: justify;"><span style="color: #000000;"><img class="aligncenter wp-image-2254" title="Weblogic Tutorial - WebLogic Component Tiers" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/126.png" alt="Weblogic Tutorial - WebLogic Component Tiers" width="352" height="306" /></span></p>
<table style="border-collapse: collapse; width: 100%; background-color: #ecf0f1; border-color: #ced4d9; border-style: solid; height: 53px;" border="1px" cellpadding="5">
<tbody>
<tr style="height: 53px;">
<td style="width: 98.3496%; text-align: center; height: 53px;"><em>Checkout Our Blog on <span style="color: #236fa1;"><a style="color: #236fa1;" title="WebLogic JDBC" href="https://tekslate.com/jdbc-weblogic" target="_blank"><strong>WebLogic JDBC</strong></a></span></em></td>
</tr>
</tbody>
</table>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 22px;"><a id="webserver"></a>The Web Server</span></h3>
<p><span style="color: #000000;">A Web server handles the HTTP protocol. When the Web server receives an HTTP request, it responds with an HTTP response, such as sending back an HTML page. To process a request, a Web server may respond with a static HTML page or image, send a redirect, or delegate the dynamic response generation to some other program such as CGI scripts, JSPs (JavaServer Pages), servlets, ASPs (Active Server Pages), server-side JavaScripts, or some other server-side technology. Whatever their purpose, such server-side programs generate a response, most often in HTML, for viewing in a Web browser.</span></p>
<p><span style="color: #000000;">Understand that a Web server's delegation model is fairly simple. When a request comes into the Web server, the Web server simply passes the request to the program best able to handle it. The Web server doesn't provide any functionality beyond simply providing an environment in which the server-side program can execute and pass back the generated responses. The server-side program usually provides for itself such functions as transaction processing, database connectivity, and messaging.</span></p>
<p><span style="color: #000000;">While a Web server may not itself support transactions or database connection pooling, it may employ various strategies for fault tolerance and scalability such as load balancing, caching, and clustering&mdash;features oftentimes erroneously assigned as features reserved only for application servers.</span></p>
<ul>
<li><span style="color: #000000;">Provides Web content</span></li>
<li><span style="color: #000000;">Communicate via HTTP, FTP, etc</span></li>
<li><span style="color: #000000;">Can handle CGI requests</span></li>
</ul>
<p style="text-align: justify;"><span style="color: #000000;">Proxy some requests to Application Servers</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="aligncenter wp-image-2255" title="Weblogic Tutorial - WebLogic Web Server" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/217.png" alt="Weblogic Tutorial - WebLogic Web Server" width="431" height="232" /></span></p>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 22px;"><a id="application-server"></a>The Application Server</span></h3>
<p><span style="color: #000000;">As for the application server, according to our definition, an application server exposes business logic to client applications through various protocols, possibly including HTTP. While a Web server mainly deals with sending HTML for display in a Web browser, an application server provides access to business logic for use by client application programs. The application program can use this logic just as it would call a method on an object (or a function in the procedural world).</span></p>
<p><span style="color: #000000;">Such application server clients can include GUIs (graphical user interface) running on a PC, a Web server, or even other application servers. The information travelling back and forth between an application server and its client is not restricted to simple display markup. Instead, the information is program logic. Since the logic takes the form of data and method calls and not static HTML, the client can employ the exposed business logic however it wants.</span></p>
<p><span style="color: #000000;">In most cases, the server exposes this business logic through a component API, such as the EJB (Enterprise JavaBean) component model found on J2EE (Java 2 Platform, Enterprise Edition) application servers. Moreover, the application server manages its own resources. Such gate-keeping duties include security, transaction processing, resource pooling, and messaging. Like a Web server, an application server may also employ various scalability and fault-tolerance techniques.</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="aligncenter wp-image-2256" title="Weblogic Tutorial - WebLogic Application Server" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/317.png" alt="Weblogic Tutorial - WebLogic Application Server" width="354" height="285" /></span></p>
<p style="text-align: justify;"><em><span style="color: #000000; font-size: 14px;"><strong>Application servers:</strong></span></em></p>
<ul>
<li style="text-align: justify;"><span style="color: #000000;">Provide services that support the execution and availability of deployed applications</span></li>
<li style="text-align: justify;"><span style="color: #000000;">Handle heavier processing chores than Web servers</span></li>
</ul>
<p style="text-align: right;"><span style="font-size: 14px; color: #000000;">Checkout: [<strong> <span style="color: #236fa1;"><a style="color: #236fa1;" title="WebLogic Server Installation" href="https://tekslate.com/weblogic-server-installation" target="_blank"><em>WebLogic Server Installation</em></a></span> </strong>]</span></p>
<h3 style="text-align: justify;"><span style="font-size: 22px; color: #e67e23;"><strong><a id="application-vs-web-server"></a>Application Server Vs Web Server</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;"><strong><em>Application Server</em>:</strong> A server that exposes business logic to client applications through various protocols including HTTP.</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em><strong>Web Server:</strong> </em>A server that handles HTTP protocol.</span></p>
<h4 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Functions:</strong></span></h4>
<p style="text-align: justify;"><span style="color: #000000;"><strong><em>Application Server</em>:</strong> To deliver various applications to another device, it allows everyone in the network to run software off of the same machine.</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em><strong>Web Server:</strong> </em>Keeping HTML, PHP, <span style="color: #236fa1;"><a style="color: #236fa1;" title="Asp.Net Ajax Tutorials" href="https://tekslate.com/asp-net-ajax-tutorials" target="_blank">ASP</a></span>, etc files available for the web browsers to view when a user accesses the site on the web, handles HTTP requests from clients.</span></p>
<h4 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Clients can include:</strong></span></h4>
<p style="text-align: justify;"><span style="color: #000000;"><strong><em>Application Server</em>:&nbsp;</strong> GUI&rsquo;s, Web Servers</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em><strong>Web Server:</strong> &nbsp;</em>HTTP, HTML</span></p>
<h4 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Functionality:</strong></span></h4>
<p style="text-align: justify;"><span style="color: #000000;"><strong><em>Application Server</em></strong>:&nbsp; Adds functionality</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em><strong>Web Server:</strong> </em>Does not add any</span></p>
<h4 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Examples of popular server products:</strong></span></h4>
<p style="text-align: justify;"><span style="color: #000000;"><strong><em>Application Server</em>:</strong>&nbsp; Oracle OC4J(Oracle), Sybase Application server(Sybase), SAP Netweaver (SAP), <span style="color: #236fa1;"><a style="color: #236fa1;" title="JBoss Tutorial" href="https://tekslate.com/jboss" target="_blank">JBoss</a></span> (Red Hat), Weblogic server (Oracle), WebSphere (IBM)</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><em><strong>Web Server:</strong> &nbsp;</em>Microsoft IIS, Apache Tomcat</span></p>
<table style="border-collapse: collapse; width: 100%; height: 54px; background-color: #ecf0f1; border-color: #ced4d9; border-style: solid;" border="1px" cellpadding="5">
<tbody>
<tr style="height: 54px;">
<td style="width: 98.3496%; text-align: center; height: 54px;"><em>Checkout Our Blog on <span style="color: #236fa1;"><a style="color: #236fa1;" title="Work Managers in WebLogic" href="https://tekslate.com/work-managers-weblogic" target="_blank"><strong>Work Managers in WebLogic</strong></a></span></em></td>
</tr>
</tbody>
</table>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 22px;"><strong><a id="j2ee-weblogic-server"></a>J2EE Platform and WebLogic Server</strong></span></h3>
<p><span style="color: #000000;">WebLogic Server J2EE applications are based on standardized, modular components. WebLogic Server provides a complete set of services for those modules and handles many details of application behavior automatically, without requiring programming.</span></p>
<p><span style="color: #000000;">J2EE includes deployment specifications for Web applications, EJB modules, Enterprise applications, client applications, and connectors. J2EE does not specify <em>how</em> an application is deployed on the target server&mdash;only how a standard module or application is packaged.</span></p>
<p><span style="color: #000000;">Java is platform-independent, so you can edit and compile code on any platform, and test your applications on development WebLogic Servers running on other platforms. For example, it is common to develop WebLogic Server applications on a PC running Windows or Linux, regardless of the platform where the application is ultimately deployed.</span></p>
<p style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Weblogic Tutorial Summary:</strong><strong>&nbsp;</strong></span></p>
<ul>
<li style="text-align: justify;"><span style="color: #000000;">Covered Software Component Tiers</span></li>
<li style="text-align: justify;"><span style="color: #000000;">Covered Overview and Differences of Web Server and Application Server</span></li>
<li style="text-align: justify;"><span style="color: #000000;">Overview of J2EE Platform and WebLogic Server</span></li>
</ul>
<p style="text-align: justify;">Our course design of tutorials is practical and informative. At TekSlate, we offer resources to help you learn various IT courses. We avail of both written material and demo video tutorials. For in-depth knowledge and practical experience explore <span style="color: #236fa1;"><a style="color: #236fa1;" title="Online WebLogic Training" href="https://tekslate.com/weblogic-server-administration-training/" target="_blank">Online WebLogic Training</a></span>.</p>
<p style="text-align: justify;">&nbsp;</p>17:T4ff2,<p>&nbsp;</p>
<p style="text-align: justify;"><span style="color: #000000;">At the end of this chapter you will be able to:</span></p>
<ul style="text-align: justify;">
<li><span style="color: #000000;"><strong>Describe the high-level architecture of JDBC</strong></span></li>
<li><span style="color: #000000;"><strong>List the four-driver types, and those provide by WLS</strong></span></li>
<li><span style="color: #000000;"><strong>Describe and configure Data Sources </strong></span></li>
<li><span style="color: #000000;"><strong>Use the Administration Console to manage JDBC resources</strong></span></li>
</ul>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Overview of JDBC</strong></span></h2>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>What Is JDBC?</strong></span></h3>
<ul style="text-align: justify;">
<li><span style="color: #000000;">JDBC is an API for uniformly accessing databases.</span></li>
</ul>
<p><span style="color: #000000;"><img class="alignnone wp-image-2549 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/226.png" alt="Data" width="241" height="222" /></span></p>
<ul style="text-align: justify;">
<li><span style="color: #000000;">JDBC provides:</span>
<ul>
<li><span style="color: #000000;">Platform independent access to databases</span></li>
<li><span style="color: #000000;">Location transparency</span></li>
<li><span style="color: #000000;">Transparency to proprietary database issues</span></li>
<li><span style="color: #000000;">Support for both two-tier and multi-tier models for database access</span></li>
</ul>
</li>
</ul>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>JDBC Architecture</strong></span></h2>
<p><span style="color: #000000;"><img class="alignnone wp-image-2550 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/236-460x255.png" alt="JDBC Architecture" width="427" height="236" /></span></p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>JDBC Drivers:</strong></span></h2>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Type 1 Driver</strong></span></h3>
<ul style="text-align: justify;">
<li><span style="color: #000000;">The Type 1 driver:</span>
<ul>
<li><span style="color: #000000;">Is a JDBC-ODBC bridge</span></li>
<li><span style="color: #000000;">Usually, runs on Windows</span></li>
<li><span style="color: #000000;">Requires ODBC driver to be installed on the client machine</span></li>
</ul>
</li>
</ul>
<p><span style="color: #000000;"><img class="alignnone wp-image-2551 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/246-460x141.png" alt="Type 1 Driver" width="452" height="137" /></span></p>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Type 2 Drivers</strong></span></h3>
<ul style="text-align: justify;">
<li><span style="color: #000000;">The Type 2 driver:</span>
<ul>
<li><span style="color: #000000;">Requires a native driver to be already installed on the client machine</span></li>
<li><span style="color: #000000;">The driver converts JDBC calls to native API calls of the database.</span></li>
</ul>
</li>
</ul>
<p><span style="color: #000000;"><img class="alignnone wp-image-2552 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/256-460x120.png" alt="Type 2 Driver" width="446" height="116" /></span></p>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Type 3 Drivers</strong></span></h3>
<ul style="text-align: justify;">
<li><span style="color: #000000;">A network server can apply several techniques to boost performance:</span>
<ul>
<li><span style="color: #000000;">Connection Pooling</span></li>
<li><span style="color: #000000;">Load management</span></li>
</ul>
</li>
</ul>
<p><span style="color: #000000;"><img class="alignnone wp-image-2553 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/266-460x162.png" alt="Type 3 Driver" width="440" height="154" /></span> <span style="color: #000000;"><img class="alignnone wp-image-2555 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/276-460x149.png" alt="Type 3 Driver " width="448" height="145" /></span></p>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Type 4 Drivers</strong></span></h3>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Type 4 drivers are &lsquo;all-Java&rsquo; driver implementations that do not require client-side configuration.</span></li>
</ul>
<p><span style="color: #000000;"><img class="alignnone wp-image-2556 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/286-460x161.png" alt="Type 4 Driver" width="429" height="150" /></span></p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Two-Tier Architecture</strong></span></h2>
<ul style="text-align: justify;">
<li><span style="color: #000000;">In the two-tier model, a Java application communicates directly with the DBMS.</span></li>
<li><span style="color: #000000;">A JDBC driver is needed that can communicate directly with the DBMS.</span></li>
<li><span style="color: #000000;">This is a client/server configuration.</span></li>
</ul>
<p><span style="color: #000000;"><img class="alignnone wp-image-2557 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/296-460x108.png" alt="Two tier Architecture" width="411" height="96" /></span></p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Multi-Tier Architecture</strong></span></h2>
<ul style="text-align: justify;">
<li><span style="color: #000000;">In the multi-tier model, commands are sent to a "middle tier" of services, which then sends the commands to the DBMS.</span></li>
<li><span style="color: #000000;">The DBMS processes the commands and sends the results back to the middle tier, which then sends them to the client.</span></li>
</ul>
<p><span style="color: #000000;"><strong>&nbsp;<img class="alignnone size-full wp-image-2558 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/306.png" alt="Multi tier Architecture" width="202" height="243" /></strong></span></p>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Choosing the Correct Driver</strong></span></h3>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Choosing the correct driver can have a significant impact on performance.</span></li>
<li><span style="color: #000000;">For two-tier applications use the type 1, 2, or 4 drivers specific to the DBMS you are using.</span></li>
<li><span style="color: #000000;">For multi-tier applications use:</span>
<ul>
<li><span style="color: #000000;">Data Source lookup in a client class</span></li>
<li><span style="color: #000000;">A type 1, 2, or 4 drivers on the server, specific to the DBMS you are using</span></li>
<li><span style="color: #000000;">XA driver where transaction support is required</span></li>
</ul>
</li>
</ul>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Data Sources:</strong></span></h2>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>What Is a Data Source?</strong></span></h3>
<ul style="text-align: justify;">
<li><span style="color: #000000;">A Data Source object provides a way for a JDBC client to obtain a database connection from a connection pool.</span></li>
<li><span style="color: #000000;">A Data Source:</span>
<ul>
<li><span style="color: #000000;">Is stored in the WLS JNDI tree</span></li>
<li><span style="color: #000000;">Can support transactions</span></li>
<li><span style="color: #000000;">Is associated with a connection pool</span></li>
</ul>
</li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>What Is a Connection Pool?</strong></span></h3>
<ul style="text-align: justify;">
<li><span style="color: #000000;">A connection pool is a group of ready-to-use database connections associated with a Data Source.</span></li>
<li><span style="color: #000000;">Connection pools:</span>
<ul>
<li><span style="color: #000000;">Are created at WebLogic Server startup</span></li>
<li><span style="color: #000000;">Can be administered using the Administration Console</span></li>
<li><span style="color: #000000;">Can be dynamically resized to accommodate the increasing load</span></li>
</ul>
</li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Benefits of Data Sources and Connection Pools</strong></span></h3>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Some advantages of this approach are:</span>
<ul>
<li><span style="color: #000000;">Time and overhead are saved by using an existing database connection</span></li>
<li><span style="color: #000000;">Connection information is managed in one location in the Administration Console</span></li>
<li><span style="color: #000000;">The number of connections to a database can be controlled</span></li>
<li><span style="color: #000000;">The DBMS can be changed without the application developer having to modify the underlying code</span></li>
</ul>
</li>
<li><span style="color: #000000;">A connection pool allows an application to &ldquo;borrow&rdquo; a DBMS connection.</span></li>
</ul>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>JDBC Data Source Architecture</strong></span></h2>
<p><span style="color: #000000;"><img class="alignnone wp-image-2559 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/319-460x237.png" alt="JDBC Data source Architecture" width="423" height="217" /></span></p>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Modular Configuration and Deployment of JDBC Resources</strong></span></h3>
<ul style="text-align: justify;">
<li><span style="color: #000000;">JDBC configurations in WLS are stored in XML documents:</span>
<ul>
<li><span style="color: #000000;">All JDBC configurations must conform to the new WebLogic-jdbc.xsd schema.</span></li>
<li><span style="color: #000000;">IDEs and other tools can validate JDBC modules based on the schema.</span></li>
</ul>
</li>
<li><span style="color: #000000;">You create and manage JDBC resources either as system modules or as application modules.</span></li>
<li><span style="color: #000000;">JDBC application modules are a WLS-specific extension of J2EE modules and can be deployed either within a J2EE application or as stand-alone modules.</span></li>
</ul>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>How Data Sources Are Used</strong></span></h2>
<ul style="text-align: justify;">
<li><span style="color: #000000;">A client retrieves a Data Source through JNDI lookup and uses it to obtain a database connection.</span></li>
</ul>
<p><span style="color: #000000;"><img class="alignnone wp-image-2560 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/326-460x198.png" alt="Data Source" width="437" height="188" /></span></p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Creating a JDBC Data Source&hellip;</strong></span></h2>
<p><span style="color: #000000;"><img class="alignnone wp-image-2561 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/336-460x255.png" alt="Creating database" width="430" height="238" /></span></p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Creating a Data Source: Properties</strong></span></h2>
<p><span style="color: #000000;"><img class="alignnone wp-image-2562 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/346.png" alt="Data source Properties" width="475" height="416" /></span></p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Creating a Data Source: XA Options</strong></span></h2>
<p><span style="color: #000000;"><img class="alignnone wp-image-2563 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/355-460x271.png" alt="XA Options" width="435" height="255" /></span></p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Creating a Data Source: ConnectionProperties</strong></span></h2>
<p><span style="color: #000000;"><img class="alignnone wp-image-2564 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/365-460x286.png" alt="Connection Properties" width="406" height="252" /></span></p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Creating a Data Source: Test Database Connections &amp; Select Targets:</strong></span></h2>
<p><span style="color: #000000;"><img class="alignnone wp-image-2565 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/376-460x266.png" alt="Data Source" width="388" height="224" /></span></p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Configuring a Connection Pool&hellip;</strong></span></h2>
<p><span style="color: #000000;"><img class="alignnone wp-image-2567 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/386-460x262.png" alt="Data Source" width="409" height="232" /></span> <span style="color: #000000;"><img class="alignnone wp-image-2568 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/396-460x248.png" alt="Connection Pool" width="429" height="230" /></span> <span style="color: #000000;"><img class="alignnone wp-image-2569 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/405-460x248.png" alt="Connection Pool" width="443" height="238" /></span></p>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Connection Pool Checklist</strong></span></h3>
<ul style="text-align: justify;">
<li><span style="color: #000000;">You can modify a connection pool after the Data Source has been created</span></li>
<li><span style="color: #000000;">Before modifying a connection pool, you should understand:</span>
<ul>
<li><span style="color: #000000;">The JDBC URL of the database</span></li>
<li><span style="color: #000000;">The connection properties used to authenticate a user or optionally configure the driver</span></li>
</ul>
</li>
<li><span style="color: #000000;">Ask your DBA for:</span>
<ul>
<li><span style="color: #000000;">The maximum number of connections your application will be allowed.</span></li>
</ul>
</li>
</ul>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>JDBC URLs</strong></span></h2>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Database locations are specified using a JDBC Uniform Resource Locator (URL).</span></li>
</ul>
<p><span style="color: #000000;"><img class="alignnone wp-image-2570 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/4110-460x184.png" alt="JDBC URL" width="445" height="178" /></span></p>
<p style="text-align: justify;"><span style="color: #e03e2d;"><em>Examples:</em></span></p>
<p><span style="color: #000000;"><img class="alignnone wp-image-2571 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/426-460x235.png" alt="JDBC Examples" width="476" height="243" /></span></p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Multi Data Sources&hellip;</strong></span></h2>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Multi Data Source:</span>
<ul>
<li><span style="color: #000000;">It is an abstraction around a group of data sources</span></li>
<li><span style="color: #000000;">Determines which data source to use to satisfy the request depending on the algorithm selected in the multi-data source configuration:</span>
<ul>
<li><span style="color: #000000;">Load balancing Or &bull; Failover</span></li>
</ul>
</li>
<li><span style="color: #000000;">Are bound to the JNDI tree</span></li>
</ul>
</li>
<li><span style="color: #000000;">XA Support for Multi Data Sources</span>
<ul>
<li><span style="color: #000000;">The WLS JDBC supports using Multi Data Sources in XA transactions.</span></li>
<li><span style="color: #000000;">You can configure the data sources contained within the Multi Data Source to use XA JDBC drivers.</span></li>
</ul>
</li>
</ul>
<p><span style="color: #000000;"><img class="alignnone wp-image-2572 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/436-460x215.png" alt="Multi data Source" width="429" height="200" /></span></p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;"><strong>Monitoring &amp; Testing Data Sources</strong></span></h2>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Monitoring Data Sources: Statistics</strong></span></h3>
<ul style="text-align: justify;">
<li><span style="color: #000000;">The Administration console provides two types of data source monitoring: statistics and testing.</span></li>
</ul>
<p><span style="color: #000000;"><img class="alignnone wp-image-2573 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/446-460x238.png" alt="Statistics" width="457" height="236" /></span></p>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Monitoring Data Sources: Testing</strong></span></h3>
<ul style="text-align: justify;">
<li><span style="color: #000000;">The Administration console provides a mechanism for manually testing individual data sources.</span></li>
</ul>
<p><span style="color: #000000;"><img class="alignnone wp-image-2574 aligncenter" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/457-460x250.png" alt="Testing" width="433" height="235" /></span></p>
<h3 style="text-align: justify;"><span style="color: #000000;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Summary:</strong></span><strong>&nbsp;</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;">In this chapter we discussed:</span></p>
<ul>
<li style="text-align: justify;"><span style="color: #000000;"><strong>JDBC high-level architecture</strong></span></li>
<li style="text-align: justify;"><span style="color: #000000;"><strong>WebLogic Server provided JDBC driver types</strong></span></li>
<li style="text-align: justify;"><span style="color: #000000;"><strong>Data Source definition and workings</strong></span></li>
<li style="text-align: justify;"><span style="color: #000000;"><strong>Connection pool definition and workings</strong></span></li>
<li style="text-align: justify;"><span style="color: #000000;"><strong>Managing JDBC resources with the Administration Console.</strong></span></li>
</ul>
<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Check out our Related Courses</strong> </span></h2>
<ul>
<li><a title="weblogic Tutorials" href="tutorialsweblogic-tutorials-how-to" target="_blank" rel="noopener">Weblogic Tutorials</a></li>
<li><a title="Introduction to Clustering Weblogic" href="introduction-clustering-weblogic/" target="_blank" rel="noopener">Introduction to Clustering Weblogic</a></li>
<li><a title="Weblogic Server Admin Training in Hyderabad" href="weblogic-server-administration-training/" target="_blank" rel="noopener">Weblogic Server Admin Training in Hyderabad</a></li>
<li><a title="Oracle Weblogic Server Installation" href="weblogic-server-installation/" target="_blank" rel="noopener">Oracle Weblogic Server Installation</a></li>
</ul>18:T68e,<ul>
<li><span style="color: #000000;"><a style="color: #000000;" href="#installation-modes">WebLogic Server Installation Modes</a></span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#product-components">Installable Product Components</a></span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#product-distribution">Product Distribution</a> &nbsp;</span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#prerequisities">Installation Prerequisites</a></span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#installation-windows">Starting the Installation Program on Windows: (.exe)</a></span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#installation-unix">Starting the Installation Program on UNIX Platforms</a></span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#generic-installers">Using Generic Installers with Filenames Ending .jar</a></span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#graphical-mode">Running Graphical-Mode Installation</a></span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#console-mode">Running Console-Mode Installation</a></span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#silent-mode">Using Silent-Mode Installation</a></span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#post-installation">Post-Installation Information</a></span></li>
<li><span style="color: #000000;"><a style="color: #000000;" href="#server-dependencies">WebLogic Server Dependencies</a></span></li>
</ul>19:T9ae9,<p>This Installation Guide describes how to use the <strong>WebLogic installation</strong> program on <strong>Windows</strong> and <strong>UNIX platforms</strong>. This document is intended for system administrators who are installing the WebLogic software. &nbsp;</p>
<table style="border-collapse: collapse; width: 100%; height: 120px;" border="1px" cellpadding="10">
<tbody>
<tr style="height: 37px; background-color: #ecf0f1; border-color: #ced4d9; border-style: solid;">
<td style="width: 98.3496%;">
<h3 style="text-align: center;"><span style="font-size: 18px;"><strong>WebLogic Server Installation - Table of Contents</strong></span></h3>
</td>
</tr>
<tr style="height: 37px; border-color: #ced4d9; border-style: solid;">
<td style="width: 98.3496%;">
<ul>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#installation-modes">WebLogic Server Installation Modes</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#product-components">Installable Product Components</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#product-distribution">Product Distribution</a> &nbsp;</span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#prerequisities">Installation Prerequisites</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#installation-windows">Starting the Installation Program on Windows: (.exe)</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#installation-unix">Starting the Installation Program on UNIX Platforms</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#generic-installers">Using Generic Installers with Filenames Ending .jar</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#graphical-mode">Running Graphical-Mode Installation</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#console-mode">Running Console-Mode Installation</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#silent-mode">Using Silent-Mode Installation</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#post-installation">Post-Installation Information</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#server-dependencies">WebLogic Server Dependencies</a></span></li>
</ul>
</td>
</tr>
</tbody>
</table>
<h2><span style="font-size: 24px; color: #e67e23;"><strong><a id="installation-modes"></a>WebLogic Server Installation Modes</strong> </span></h2>
<p>The installation program can be used in the following modes: &nbsp;</p>
<h4><span style="font-size: 16px;"><em><span style="color: #000000;"><strong>1. Graphical-Mode installation:</strong> </span></em></span></h4>
<p><strong>&nbsp;</strong>It is an interactive, GUI-based method for installing software. It can be run on both Windows and UNIX systems.</p>
<p><strong> </strong><span style="color: #000000;"><strong>Note:</strong></span><em> If you want to run the installation program in graphical mode, the console attached to the machine on which you are installing the software must support a Java-based GUI.</em> &nbsp;</p>
<h4><span style="color: #000000; font-size: 16px;"><em><strong>2. Console Mode Installation:</strong></em></span></h4>
<p>It is an interactive, text-based method for installing your software from the command line, on either a <span style="color: #236fa1;"><a style="color: #236fa1;" title="UNIX Shell Scripting Training" href="https://tekslate.com/unix-shell-scripting-training" target="_blank">UNIX </a></span>system or a Windows system. &nbsp;</p>
<h4><span style="color: #000000; font-size: 16px;"><em><strong>3. Silent Mode Installation:</strong></em></span></h4>
<p>Silent-mode installation is a non-interactive method of installing your software that requires the use of an XML property file for selecting installation options. You can run the silent mode installation from either a script or from the command line. Silent-mode installation is a way of setting installation configurations only once and then using those configurations to duplicate the installation on many machines. <strong>&nbsp;</strong></p>
<h3><span style="font-size: 22px; color: #e67e23;"><a id="product-components"></a><strong>Installable Product Components</strong> <strong>&nbsp;</strong></span></h3>
<p>The installable product components vary depending on the installer that you are using.</p>
<p><span style="color: #000000;"><strong>1) WebLogic Server</strong></span></p>
<p><span style="color: #000000;"><strong>2) WebLogic Workshop</strong> </span></p>
<p><span style="color: #000000;"><strong>3) WebLogic Portal</strong> </span></p>
<p><span style="color: #000000;"><strong>4) Oracle Service Bus</strong> </span></p>
<table style="border-collapse: collapse; width: 100%; height: 60px; background-color: #ecf0f1; border-color: #CED4D9; border-style: solid;" border="1px" cellpadding="5">
<tbody>
<tr>
<td style="width: 98.3496%; text-align: center;"><em>Want to acquire industry skills and gain complete knowledge of WebLogic? Enrol in Instructor-Led live <span style="color: #236fa1;"><a style="color: #236fa1;" title="WebLogic Training" href="https://tekslate.com/weblogic-server-administration-training" target="_blank"><strong>WebLogic Training</strong></a></span>&nbsp;to get Job Ready!</em></td>
</tr>
</tbody>
</table>
<h3><span style="font-size: 22px; color: #e67e23;"><strong><a id="product-distribution"></a>Product Distribution</strong></span>&nbsp;<strong>&nbsp;</strong></h3>
<h4><span style="color: #000000; font-size: 16px;"><em><strong>1. Net installer (recommended):</strong> </em></span></h4>
<p><strong>&nbsp;</strong>This type downloads a small setup file that enables you to select the components that you want to install on your system. The installer then downloads only the components you select. The Net installer eliminates the need to download the entire product before installing it and thereby reduces the time needed to complete the download, the disk space, and also the RAM required by the WebLogic Server. &nbsp;</p>
<h4><span style="font-size: 16px; color: #000000;"><strong>2. Package installer:</strong></span></h4>
<p>This type downloads a standalone version of the installation program. The WebLogic Server installation program contains WebLogic Server and related samples, Workshop, and related samples as described in Installable Product Components, and the JRockit SDK and Sun JDK (for Windows and Linux platforms only).</p>
<p><span style="color: #000000;"><strong>Note:</strong></span><em> If you are planning to install the software in silent mode, you must download the package installer. Silent-mode installation is not supported by the net installer.</em> &nbsp;</p>
<h4><span style="font-size: 16px; color: #000000;"><strong>3. Generic installers (net and package)</strong><strong>&nbsp;</strong></span></h4>
<p>This type of installer is a .jar file. It is the same as the package and net installers, except that it does not include JDKs. You can use this type of installer to install the product on UNIX machines on which Java is already installed. &nbsp;</p>
<h3><span style="font-size: 22px; color: #e67e23;"><a id="prerequisities"></a><strong>Installation Prerequisites</strong> </span></h3>
<p>The following sections describe the installation prerequisites:</p>
<p><span style="font-size: 16px; color: #000000;"><strong>1. System Requirements:</strong></span></p>
<table style="border-collapse: collapse; width: 100%; border-style: solid;" border="1px" cellpadding="5">
<tbody>
<tr>
<td style="width: 14.2161%;"><strong><em>Platform configuration</em></strong></td>
<td style="width: 85.7839%;">Supported configuration of hardware, operating system, JDK, and DB specific to the product you are installing.</td>
</tr>
<tr>
<td style="width: 14.2161%;"><strong><em>Processor</em>&nbsp;</strong></td>
<td style="width: 85.7839%;">1-GHz CPU</td>
</tr>
<tr>
<td style="width: 14.2161%;"><strong><em>Hard disk drive</em>&nbsp;</strong></td>
<td style="width: 85.7839%;">Installation requires approximately 3.5 GB of disk space.</td>
</tr>
<tr>
<td style="width: 14.2161%;"><strong><em>Memory </em></strong></td>
<td style="width: 85.7839%;">Minimum of 1 GB RAM and recommends 2 GB of RAM.</td>
</tr>
<tr>
<td style="width: 14.2161%;"><strong><em>JDK</em>&nbsp;&nbsp;</strong></td>
<td style="width: 85.7839%;">The Products installation program requires a Java run-time environment (JRE) to run. A JRE is bundled in the Windows installation program and in some UNIX installation programs (those with filenames ending in .bin). For other UNIX platforms, the installation program does not install a JDK. Filenames for these installation programs end in .jar. To run the .jar installation programs, you must have the appropriate version of the JDK installed on your system, and include the bin directory of the JDK at the beginning of the PATH variable definition. &nbsp;</td>
</tr>
</tbody>
</table>
<p><span style="color: #000000; font-size: 16px;"><strong>2. Temporary Disk Space Requirements:</strong></span></p>
<p>The installation program uses a temporary directory into which it extracts the files necessary to install the software on the target system. During the installation process, your temporary directory must contain sufficient space to accommodate the compressed Java Run-time Environment (JRE) bundled with the installation program and an uncompressed copy of the JRE that is expanded into the temporary directory.</p>
<p><em><strong>Windows platforms</strong>:</em> directory referenced by the TMP system variable</p>
<p><span style="color: #e03e2d;"><strong><span style="color: #000000;">Ex:</span></strong> </span>C: WINDOWSTemp</p>
<p><strong><em>UNIX Platforms:</em></strong> system-dependent temporary directory</p>
<p><strong><span style="color: #000000;"> Ex:</span></strong> /tmp &nbsp;</p>
<p><span style="font-size: 16px; color: #000000;"><strong>3. Administrator Privileges:</strong></span></p>
<p>When you are installing the software as a user with Administrator privileges, you are presented with the option to create the Start menu shortcuts in the All Users folder, or in the Local User&rsquo;s Start menu folder. The following options are available...</p>
<p><span style="color: #000000;"><strong> <em>All Users</em>:</strong></span> All users registered on the machine are provided with access to the installed software. Subsequently, if users without Administrator privileges use the Configuration Wizard from this installation to create domains, the Start menu shortcuts to the domains are not created. In this case, users can manually create shortcuts in their local Start menu folders, if desired.</p>
<p><span style="color: #000000;"><strong> <em>Local user</em>:</strong></span> Other users registered on this machine will not have access to the Start menu entries for this installation.</p>
<p><span style="font-size: 16px; color: #000000;"><strong><strong>4. Installation Considerations:</strong></strong></span></p>
<ul>
<li>We recommend that you do not exceed a maximum of 12 characters when naming your home directory. If the name of this directory has more than 12 characters and if there are spaces in the directory name, the CLASSPATH may not be resolved properly.</li>
<li>You can install only one instance of each version of a WebLogic product in a single home directory. For example, you can install only one instance of the current version of WebLogic Server in a home directory, but that home directory may also contain an instance of a previous version of WebLogic Server.</li>
</ul>
<p>If the home directory is not empty and it does not contain registry.xml, or if any of the product installation directories are not empty, the following messages will be displayed:</p>
<ul>
<li>For the home directory selection task: the BEA_HOME directory is not empty. Proceed with installation?</li>
<li>For the product installation directory (ies) selection task: One or more installation directories are not empty. Proceed with installation? &nbsp;</li>
</ul>
<table style="border-collapse: collapse; width: 100%; height: 50px; background-color: #ecf0f1; border-color: #CED4D9; border-style: solid;" border="1px" cellpadding="5">
<tbody>
<tr>
<td style="width: 98.3496%; text-align: center;"><em>Checkout Our Blog on</em> <span style="color: #236fa1;"><a style="color: #236fa1;" title="WebLogic Tutorial" href="https://tekslate.com/tutorialsweblogic-tutorials-how-to" target="_blank"><em><strong>WebLogic Tutorial</strong></em></a></span></td>
</tr>
</tbody>
</table>
<h3><span style="font-size: 22px; color: #e67e23;"><a id="installation-windows"></a><strong>Starting the Installation Program on Windows: (.exe)</strong> </span></h3>
<p>The following sections describe how to start the installation program on a Windows platform. The name of the installation program for the WebLogic Server package installer is <em>server923_win32.exe</em> &nbsp;</p>
<p><span style="font-size: 16px;"><em><span style="color: #000000;"><strong>1. Starting Graphical Mode Installation:</strong> </span></em></span></p>
<p>&nbsp;Double-click on the installer file</p>
<p><span style="font-size: 16px; color: #000000;"><em><strong>2. Starting Console Mode Installation:</strong></em></span></p>
<ul>
<li>Open a command prompt window.</li>
<li>Go to the directory where you downloaded the installation program</li>
<li>Launch the installation of WLS in console mode, enter</li>
</ul>
<p><em>server923_win32.exe -mode=console -log=C:logsserver_install.log</em></p>
<p><span style="color: #000000;"><strong> Note:</strong></span><em> You can include the -log=full_path_to_log_file option in the command line to create a verbose installation log.</em></p>
<p><span style="font-size: 16px;"><em><span style="color: #000000;"><strong>3. Starting Silent Mode Installation:</strong></span></em></span></p>
<ul>
<li><em>Create a silent.xml</em> file that defines the configuration settings normally entered by a user during an interactive installation process, such as graphical mode or console-mode installation.</li>
</ul>
<p><span style="color: #000000;"><strong>Note:</strong></span><em> Incorrect entries in the silent.xml file can cause installation failures. To help you determine the cause of a failure, we recommend that you create a log file when you start the installation.</em></p>
<ul>
<li>Open a command prompt window.</li>
<li>Go to the directory where you downloaded the installation program.</li>
<li>Launch the installation of the WebLogic Server installer, enter</li>
</ul>
<p><strong><span style="color: #000000;">Ex&nbsp;:</span></strong> server923_win32.exe -mode=silent -silent_xml=C:silent.xml</p>
<p>-log=C:logsserver_install.log <strong>&nbsp;</strong></p>
<h3><span style="font-size: 22px; color: #e67e23;"><strong><a id="installation-unix"></a>Starting the Installation Program on UNIX Platforms:</strong></span></h3>
<p><span style="font-size: 14px; color: #000000;">The following sections describe how to start the installation program on a UNIX Platform.</span></p>
<p><span style="font-size: 14px; color: #000000;">Using Installers with Filenames Ending in .bin:</span></p>
<p><span style="font-size: 16px;"><em><strong><span style="color: #000000;">1. Starting Graphical-Mode Installation:</span></strong></em></span></p>
<ol style="list-style-type: lower-alpha;">
<li>Go to the directory where you downloaded the installation program</li>
<li>Launch the installation by entering the following commands:</li>
</ol>
<p>chmod a+x &lt;filename.bin&gt; ./&lt;filename.bin&gt;</p>
<p>In these commands, filename.bin is the name of your installation program. For example, for WebLogic Server, the file name is server923_solaris32.bin.</p>
<p><span style="color: #000000;"><strong>Note:</strong></span><em> You can include the log file option in the command line to create a verbose installation log.</em></p>
<p><strong>For example: </strong>chmod a+x&nbsp; server923_solaris32.bin ./server923_solaris32.bin -log=/home/logs/install.log &nbsp;</p>
<p><span style="font-size: 16px;"><em><span style="color: #000000;"><strong>2. Starting Console-Mode Installation:</strong></span></em></span></p>
<ol style="list-style-type: lower-alpha;">
<li>Go to the directory where you downloaded the installation program</li>
<li>Launch the installation by entering the following commands:</li>
</ol>
<p>chmod a+x &lt;filename.bin&gt; ./&lt;filename.bin&gt; -mode=console</p>
<p><strong>For example:</strong> chmod a+x server923_solaris32.bin ./server923_solaris32.bin -mode=console -log=/home/logs/install.log &nbsp;</p>
<p><span style="color: #000000; font-size: 16px;"> <strong>3. Starting Silent-Mode Installation:</strong></span></p>
<ol style="list-style-type: lower-alpha;">
<li><em>Create a silent.xml file </em>that defines the configuration settings normally entered by a user during an interactive installation process, such as graphical mode or console-mode installation.</li>
<li>Open a command prompt window.</li>
<li>Go to the directory where you downloaded the installation program.</li>
<li>Launch the installation of the WebLogic Server installer, enter</li>
</ol>
<p><strong>For example:</strong> chmod a+x filename.bin ./&lt;filename.bin&gt; -mode=silent -silent_xml=/&lt;path_to_silent.xml&gt;</p>
<p>Here, filename.bin is the name of the installation file (for example, for WebLogic Server: server923_solaris32.bin), and path_to_silent.xml is the full pathname of the silent.xml template file. For example, for WebLogic Server, enter:</p>
<p>chmod a+x server923_solaris32.bin ./server923_solaris32.bin -mode=silent -silent_xml=/home/silent.xml -log=/home/logs/install.log</p>
<table style="border-collapse: collapse; width: 100%; height: 55px; background-color: #ecf0f1; border-color: #CED4D9; border-style: solid;" border="1px" cellpadding="5">
<tbody>
<tr>
<td style="width: 98.3496%; text-align: center;"><em>&nbsp;Read this latest <span style="color: #236fa1;"><a style="color: #236fa1;" title="WebLogic Interview Questions" href="https://tekslate.com/weblogic-interview-questions-and-answers" target="_blank"><strong>WebLogic Interview Questions</strong></a></span> that help you grab high-paying jobs</em></td>
</tr>
</tbody>
</table>
<h3><span style="font-size: 22px; color: #e67e23;"><strong><a id="generic-installers"></a>Using Generic Installers with Filenames Ending .jar</strong></span></h3>
<p><span style="font-size: 16px; color: #000000;"><strong>1. </strong><strong>Starting Graphical-Mode Installation:</strong></span></p>
<p>&nbsp; a) Add the bin directory of the appropriate JDK to the beginning of the PATH variable definition on the target system. Here JAVA_HOME represents the full path to the JDK directory.</p>
<p><strong>Ex:</strong> PATH=$JAVA_HOME/bin:$PATH</p>
<p>export PATH</p>
<p>&nbsp; b) Go to the directory where you downloaded the installation program.</p>
<p>&nbsp; c) Launch the installation program by entering the following command:</p>
<p>java -jar net_server&lt;version&gt;_generic.jar</p>
<p><span style="color: #e03e2d;"><strong><span style="color: #000000;">Note:</span> </strong></span>You can include the -log=full_path_to_log_file option in the command line to create a verbose installation log.</p>
<p><strong>Ex:</strong> server&lt;version&gt;_generic.jar -log=/home/logs/install.log</p>
<p><span style="color: #000000; font-size: 16px;"><strong>2. Starting Console-Mode Installation:</strong> </span></p>
<p>&nbsp; a) Add the bin directory of the appropriate JDK to the beginning of the PATH variable definition on the target system. Here, JAVA_HOME represents the full path to the JDK directory.</p>
<p><strong>Ex:</strong> PATH=JAVA_HOME/bin:$PATH</p>
<p>export PATH</p>
<p>&nbsp; b) Go to the directory where you downloaded the installation program.</p>
<p>&nbsp; c). Launch the installation by entering the following command:</p>
<p>java -jar &lt;filename.jar&gt; -mode=console</p>
<p>Here, filename.jar is the name of the Products installation file, for example,</p>
<p>net_server&lt;version&gt;_generic.jar.</p>
<p>Ex: java -jar server&lt;version&gt;_generic.jar -mode=console</p>
<p>-log=/home/logs/install.log &nbsp;</p>
<p><span style="font-size: 16px; color: #000000;"><strong>3. </strong><strong>Starting </strong><strong>Silent-Mode Installation:</strong></span> <strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </strong></p>
<p>&nbsp; a)<span style="color: #e03e2d;"> <span style="color: #000000;"><strong><em>Create a silent.xml file</em></strong></span></span> that defines the configuration settings normally entered by a user during an interactive installation process, such as graphical mode or console-mode installation. For information about creating a silent.xml file, see Creating a silent.xml File for Silent-Mode Installation.</p>
<p>&nbsp; b) Add the bin directory of the appropriate JDK to the beginning of the PATH variable definition on the target system.</p>
<p><strong>EX:</strong> PATH=JAVA_HOME/bin:$PATH</p>
<p>export PATH</p>
<p>Here, JAVA_HOME is the full path of the JDK directory.</p>
<p>&nbsp; c) Go to the directory that contains the installation file.</p>
<p>&nbsp; d) Launch the installation by entering the following command:</p>
<p>java -jar &lt;filename.jar&gt; -mode=silent -silent_xml=/path_to_silent.xml</p>
<p>Here, filename.jar is the name of the Products installation file (for example, server&lt;version&gt;_generic.jar, where, path_to_silent.xml is the full path silent.xml file. &nbsp;</p>
<p><strong>Ex:</strong> server&lt;version&gt;_generic.jar -mode=silent -silent_xml=/home/silent.xml -log=/home/logs/install.log</p>
<h3><span style="font-size: 22px; color: #e67e23;"><strong><a id="graphical-mode"></a>Running Graphical-Mode Installation</strong></span></h3>
<p><strong>&nbsp;<img class="alignnone wp-image-2282" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/235.png" alt="BEA Installer" width="367" height="326" /></strong> <strong>&nbsp;</strong> <strong>&nbsp;</strong></p>
<p><span style="font-size: 16px; color: #000000;"><strong>1) Double-click on the installer file</strong></span></p>
<p><img class="alignnone wp-image-2283" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/245.png" alt="BEA Installer" width="441" height="316" /></p>
<p><span style="color: #000000; font-size: 16px;"><strong>2) <em>Welcome</em>:&nbsp; Click Next to proceed with the installation. You may cancel the installation at any time by clicking Exit.</strong> </span></p>
<p><img class="alignnone size-full wp-image-2284" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/255.png" alt="BEA Installer" width="448" height="322" /></p>
<p><span style="color: #000000; font-size: 16px;"><strong>3) <em>Choose BEA Home Directory</em>: Specify the home directory that will serve as the central support directory for all products installed on the target system</strong> <img class="alignnone wp-image-2285" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/265.png" alt="BEA Installer" width="455" height="327" /> &nbsp;</span></p>
<p><span style="font-size: 16px; color: #000000;"> <strong>4) <em>Choose Install Type:</em> Select one of the following installation types: </strong></span></p>
<p>Complete&mdash; All the software components included in your installation program, are installed on your system.</p>
<p>Custom&mdash; You can select the software components to be installed.</p>
<p><img class="alignnone wp-image-2286" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/275.png" alt="BEA Installer" width="425" height="306" /></p>
<p><span style="font-size: 16px; color: #000000;"><strong>5) <em>Choose Products and Components: </em>Specify the components to be installed by selecting or clearing the appropriate checkboxes. This window displays a tree-view of all the components available for installation.</strong></span></p>
<p><img class="alignnone wp-image-2287" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/285.png" alt="BEA Installer" width="428" height="308" /></p>
<p><span style="font-size: 16px; color: #000000;"><strong>6) Choose Product Installation Directories: </strong><strong>Specify the directories in which you want to install the products, and click Next. </strong> <img class="alignnone size-full wp-image-2288" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/295.png" alt="BEA Installer" width="412" height="297" /></span></p>
<p><span style="color: #000000; font-size: 16px;"><strong>7) <em>Windows service:</em> Choose whether you want to install the Windows services indicated, specifically the WebLogic Server Node Manager Service. Node Manager is used to monitor, start, and stop server instances in a domain. </strong> <strong>If you select Yes, enter the Node Manager Listen Port in the appropriate field. The default is 5556</strong> <img class="alignnone size-full wp-image-2289" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/305.png" alt="BEA Installer" width="416" height="299" /></span></p>
<p><span style="color: #000000; font-size: 16px;"><strong>8) <em>Choose Shortcut Location: </em>Specify the Start menu folder in which you want the Start menu shortcuts created</strong> <strong>&nbsp;</strong><strong>All Users Start menu folder &amp; Local User&rsquo;s Start menu folder</strong> <img class="alignnone size-full wp-image-2290" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/325.png" alt="BEA Installer" width="419" height="302" /></span></p>
<p><span style="color: #000000; font-size: 16px;"><strong>9) Installation Complete</strong> &nbsp; &nbsp;</span></p>
<h3><span style="color: #e67e23; font-size: 22px;"><strong><a id="console-mode"></a>Running Console-Mode Installation</strong> <strong>&nbsp;</strong></span></h3>
<p>To complete the console-mode installation process, respond to the prompts in each section by entering the number associated with your choice or by pressing Enter to accept the default. To exit the installation process, enter exit (or x, for short) in response to any prompt. To review or change your selection, enter previous (or p, for short) at the prompt. To proceed to the following window, enter next (or n, for short).</p>
<p><span style="color: #000000;"><strong>Note:</strong></span> <em>In the sample console text and directory pathnames provided in this section, Windows conventions (such as backslashes in pathnames) are used, for example, C:beawlserver_&lt;version&gt;. When entering pathnames on a UNIX system, be sure to use UNIX conventions, instead. For example, use forward slashes in pathnames, such as /home/bea/wlserver_&lt;version&gt;.</em></p>
<ul>
<li>At the Welcome prompt, type next (or n for short), or press Enter to continue with the installation process. The Choose BEA Home directory prompt is displayed.</li>
<li>Specify the home directory that will serve as the central support directory for all WebLogic products installed on the target system.</li>
<li>Specify the type of installation you want to perform by entering the number associated with the install type.</li>
</ul>
<p>To choose a complete installation, type 1 or press Enter &ndash; To choose a Custom installation, type 2. The Choose Products and Components to Install prompt is displayed.</p>
<ul>
<li>Select the components you want to install. The word Installed is shown in brackets for any component that is already installed in the current BEA_HOME directory.</li>
</ul>
<p><span style="color: #000000;"><strong>Note:</strong></span><em><span style="color: #000000;"> </span>The installer displays the estimated size of the installation for the selected </em> <em>Components.</em></p>
<ul>
<li>Specify the directory in which you want to install the software. You can accept the default product directory (BEA_HOMEwlserver_&lt;version&gt;) or create a new product directory.</li>
<li>Specify whether you want to install Node Manager as a Windows service.</li>
</ul>
<p><em><strong>Do one of the following:</strong></em></p>
<p>Enter 1 to install a node manager as a Windows service.</p>
<p>Enter 2 if you do not want to install Node Manager as a Windows service.</p>
<p>Specify the folder in which you want to create the Start menu shortcuts.</p>
<p><strong>Do one of the following:</strong></p>
<p>Type 1 or press Enter to create Start menu shortcuts in the All Users folder.</p>
<p>Type 2 to create shortcuts in your local user&rsquo;s Start menu folder.</p>
<p>Press Enter to continue. The installation program begins by copying the components you specified to your system.</p>
<p><span style="color: #000000;"><strong> Note:</strong></span><em> QuickStart is not started automatically for console-mode or silent-mode installations. You can launch QuickStart from the Start Menu (Windows) or from the command line (Windows and UNIX).</em> <strong>&nbsp;</strong></p>
<h3><span style="font-size: 22px; color: #e67e23;"><strong><a id="silent-mode"></a>Using Silent-Mode Installation</strong></span></h3>
<p><span style="color: #000000; font-size: 16px;"><strong>Main Steps</strong> <strong>Important Considerations for Silent-Mode Installation</strong> <strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </strong></span></p>
<p>When you are running the installation program in silent mode, keep in mind the following considerations:</p>
<p>&nbsp; a) We must use the package installer for silent mode installation. Silent-mode installation is not supported by the net installer.</p>
<p>&nbsp; b) Silent-mode installation requires the same amount of temporary disk space and uses the same temporary storage directories as a standard installation. The installation program does not alert you if there is not enough space in the temporary directory.</p>
<p>&nbsp; c) A silent mode installation takes the same amount of time as a standard installation. At the beginning of a silent-mode installation, an initial installation program window or message is displayed briefly, indicating that the installation has started. No messages are displayed to indicate that the installation is in progress or has been completed successfully.</p>
<p>&nbsp; d) Incorrect entries in the silent.xml file can cause installation failures. To help you determine the cause of a failure, we recommend that you create a log file when you start the installation.</p>
<p>&nbsp; e) The XML definition (&lt;?xml version="1.0" encoding="UTF-8"?&gt;) must be at the very beginning of the silent.xml file. Do not enter a space or line breaks before the XML definition.</p>
<p>&nbsp; f) You cannot reinstall any WebLogic product on top of a previously installed version of the same product&mdash;in the same home directory or in the same file location. You can, however, add products and product components to an existing installation.</p>
<p><span style="font-size: 16px; color: #000000;"><strong>The silent-mode installation process has two primary steps:</strong> </span></p>
<ol>
<li><span style="color: #e03e2d;"><span style="color: #000000;"><strong>Create</strong> <strong>a silent.xml</strong></span> </span>file that defines the configuration settings normally entered by a user during an interactive installation process, such as graphical mode or console-mode installation. For example, values for the BEA Home directory, the product directory, and the components to be installed are supplied in a silent.xml file.</li>
<li>Start the silent-mode installation process by using the values specified in the silent.xml file. &nbsp;</li>
</ol>
<h3><span style="font-size: 16px; color: #000000;"><strong>Values for the Sample silent.xml File for WebLogic</strong> </span></h3>
<p>BEAHOME&nbsp; - The full path for the home directory of your choice.</p>
<p>WLS_INSTALL_DIR - The full path for the directory where you want to install WebLogic Server Ex - C:bea_HOMEwlserver_9.2</p>
<p>COMPONENT_PATHS Specify the components and subcomponents you want to install on your system.</p>
<p>For Example: To install WebLogic Server, use the following values:</p>
<p>WebLogic Server/Core Application Server</p>
<p>|WebLogic Server/Administration Console</p>
<p>|WebLogic Server/Configuration Wizard and Upgrade Framework</p>
<p>|WebLogic Server/Web 2.0 HTTP Pub-Sub Server</p>
<p>|WebLogic Server/WebLogic JDBC Drivers</p>
<p>|WebLogic Server/Third-Party JDBC Drivers</p>
<p>|WebLogic Server/WebLogic Server Clients</p>
<p>|WebLogic Server/WebLogic Web Server Plugins</p>
<p>|WebLogic Server/UDDI and Xquery Support</p>
<p>|WebLogic Server/Server Examples</p>
<p>INSTALL_NODE_MANAGER_SERVICE (Windows platforms only)</p>
<ul style="list-style-type: square;">
<li>Yes to install the WebLogic Server Node Manager as a Windows service.</li>
<li>No skipping the installation of the WLS Node Manager as a Windows service. The default is no.</li>
</ul>
<p>NODEMGR_PORT The Node Manager listen port.</p>
<p><span style="color: #000000;"><strong>Note:</strong></span> The INSTALL_NODE_MANAGER_SERVICE option must be set to yes.</p>
<p>INSTALL_SHORTCUT_IN_ALL_USERS_FOLDER</p>
<ul>
<li>true, or yes, to create the shortcuts in the All Users folder. The default is true.</li>
<li>False, or no, to create the shortcuts in the local user's folder.</li>
</ul>
<h3><span style="font-size: 18px; color: #e67e23;"><strong><a id="post-installation"></a><span style="font-size: 22px;">Post-Installation Information</span></strong></span></h3>
<p><span style="font-size: 16px; color: #000000;"><strong>Using QuickStart</strong> </span></p>
<p>When the product installation is completed using graphical-mode installation, the QuickStart application is launched automatically, by default. If you do not want to run QuickStart at the completion of the installation process, you can clear the Run QuickStart checkbox in the Install Complete window.</p>
<p>QuickStart is not invoked for console mode or silent-mode installations. QuickStart is designed to help first-time users evaluate, learn, and use Product software.</p>
<p>For example, the QuickStart application for WebLogic Server provides quick access to the following:</p>
<ul>
<li>Launch Oracle Workshop for WebLogic</li>
<li>Start WebLogic Server 10.3</li>
<li>Upgrade domains to version 10.3</li>
<li>Access documentation online</li>
</ul>
<p>After installation, you can launch QuickStart as follows:</p>
<p>On Window systems, choose Start &gt; Programs &gt; Bea Product &gt; QuickStart</p>
<p>On UNIX systems, perform the following steps:</p>
<ol>
<li>Go to the /common/bin subdirectory of your installation.</li>
</ol>
<p>For example cd /home/bea/wlserver_&lt;version&gt;/common/bin</p>
<ol>
<li>Enter the following command: sh quickstart. sh</li>
</ol>
<p><span style="color: #000000;">&nbsp; <strong>Post Installation: BEA Directory</strong></span></p>
<p><img class="alignnone wp-image-2291" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/335-460x267.png" alt="Post Installation" width="457" height="265" /></p>
<p><span style="color: #000000;"><strong>WebLogic Directory Structure:</strong></span></p>
<p><img class="alignnone wp-image-2292" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/345-460x292.png" alt="Weblogic Directory Structure" width="436" height="276" /></p>
<h4><span style="color: #e67e23;"><span style="font-size: 16px;"><strong>Samples Directory Structure</strong> </span>&nbsp; </span></h4>
<p><span style="color: #000000;"><strong>JVM Run-Time Arguments</strong></span></p>
<p><strong><img class="alignnone wp-image-2293" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/354-460x254.png" alt="JVM Run-time Arguments" width="424" height="233" /></strong></p>
<ul>
<li>WebLogic Server can be executed with most Java Virtual Machines.</li>
<li>WebLogic Server supports JDK 1.6</li>
</ul>
<h4><span style="font-size: 16px; color: #000000;"><strong>The syntax for running a virtual machine:</strong> </span></h4>
<p>java options FullyQualifiedJavaClass ProgramOptions</p>
<p><span style="color: #000000;"> <strong>Some virtual machine options:</strong></span></p>
<ul>
<li>Xms The minimum size of the dynamic heap.</li>
<li>Xmx The maximum size of the dynamic heap.</li>
<li>Dprop=val Defines an environment variable accessible by the program.</li>
<li>classpath Specifies a list of files/directories containing dependent clauses. &nbsp;</li>
</ul>
<h3><span style="font-size: 18px; color: #e67e23;"><strong><a id="server-dependencies"></a><span style="font-size: 22px;">WebLogic Server Dependencies</span></strong><span style="font-size: 22px;"> </span></span></h3>
<p>To run WLS, you must configure:</p>
<ul>
<li>PATH to include all executable programs (including the Java interpreter)</li>
<li>CLASSPATH to include dependencies</li>
</ul>
<p>These parameters can be set:</p>
<ul>
<li>in your computer&rsquo;s environment settings</li>
<li>in a custom batch file or shell script</li>
</ul>
<p><span style="font-size: 16px; color: #000000;"><strong>Configuring Your CLASSPATH</strong> </span></p>
<p>The WLS CLASSPATH is completely configured by the Java system CLASSPATH environment variable</p>
<p><span style="font-size: 16px; color: #000000;"><strong>Files that must be in the CLASSPATH:</strong></span></p>
<ul>
<li>%WL_HOME%/server/lib/weblogic.jar</li>
<li>Any additional service pack jar files (See release notes)</li>
</ul>
<p><span style="font-size: 16px; color: #000000;"><strong>Files that can be in the CLASSPATH:</strong></span></p>
<ul>
<li>%WL_HOME%/common/eval/pointbase/lib/pbclient51.jar</li>
<li>%WL_HOME%/common/eval/pointbase/lib/pbtools51.jar</li>
<li>%WL_HOME%/common/eval/pointbase/lib/pbembedded51.jar</li>
<li>%WL_HOME%/server/lib/xmlx.jar</li>
<li>JDBC drivers</li>
<li>Startup classes, shutdown classes</li>
<li>3rd-party libraries</li>
<li>Other common classes</li>
</ul>
<p><span style="font-size: 16px; color: #000000;"><strong>Setting Environment Variables:</strong></span></p>
<ul>
<li>Run setWLSEnv.cmd (setWLSEnv.sh for UNIX) under WL_HOME/server/bin to set WL_HOME, JAVA_HOME, PATH, CLASSPATH.</li>
<li>cmd (setWLSEnv.sh for UNIX) makes a call to commEnv.sh under WL_HOME/common/bin to set common environment variables, such as BEA_HOME, ANT_HOME, and POINTBASE_HOME.</li>
<li>Check the version of JDK &ndash;java -version <strong>&nbsp;</strong></li>
</ul>
<h4><span style="color: #e67e23; font-size: 18px;"><strong>Summary:</strong> </span></h4>
<p>In this section, we discussed:</p>
<ul>
<li>WebLogic Server product overview</li>
<li>Installing &amp; Running WebLogic Server</li>
<li>Installing WebLogic Server</li>
<li>The WebLogic Server directory structure</li>
<li>How to configure the CLASSPATH variable for WebLogic Server</li>
</ul>
<h2><span style="font-size: 14pt; color: #000000;"><strong>Check out our Related Courses</strong> </span></h2>
<ul>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" title="Introduction to Clustering Weblogic" href="https://tekslate.com/introduction-clustering-weblogic" target="_blank">Introduction to Clustering Weblogic</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" title="Oracle Apex Training in Chicago" href="https://tekslate.com/oracle-apex-training" target="_blank">Oracle Apex Training In Chicago</a></span></li>
</ul>1a:T3a4e,<p style="text-align: justify;"><span style="color: #e03e2d;"><strong>WebLogic Server</strong></span> is based on Java 2 Platform, Enterprise Edition (J2EE), the standard platform used to create Java-based multi-tier enterprise applications. J2EE platform technologies were developed through the efforts of BEA Systems and other vendors in collaboration with the main developer, Sun Microsystems.&nbsp;It manages system-level details so you can concentrate on business logic and presentation.</p>
<p style="text-align: justify;">The following are the various Weblogic Server&nbsp;versions released from 2002. The most recent version of Weblogic is 12c.</p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;">Weblogic Server Versions</span></h2>
<p style="text-align: justify;">WebLogic Server 12c Release 3 (12.1.3) - June 26, 2014</p>
<p style="text-align: justify;">WebLogic Server 12c Release 2 (12.1.2) - July 11, 2013</p>
<p style="text-align: justify;">WebLogic Server 12c Release 1 (12.1.1) - Dec 1, 2011</p>
<p style="text-align: justify;">WebLogic Server 11gR1 PS5 (10.3.6) - February 26, 2012</p>
<p style="text-align: justify;">WebLogic Server 11gR1 PS4 (10.3.5) - May 16, 2011</p>
<p style="text-align: justify;">WebLogic Server 11gR1 PS3 (10.3.4) - January 15, 2011</p>
<p style="text-align: justify;">WebLogic Server 11gR1 PS2 (10.3.3) - April 2010</p>
<p style="text-align: justify;">WebLogic Server 11gR1 PS1 (10.3.2) - Nov 2009</p>
<p style="text-align: justify;">WebLogic Server 11g (10.3.1) - Jul 2009</p>
<p style="text-align: justify;">WebLogic Server 10.3 - Aug 2008</p>
<p style="text-align: justify;">WebLogic Server 10.0 - Mar 2007</p>
<p style="text-align: justify;">WebLogic Server 9.2</p>
<p style="text-align: justify;">WebLogic Server 9.1</p>
<p style="text-align: justify;">WebLogic Server 9.0 - Nov 2006</p>
<p style="text-align: justify;">WebLogic Server 8.1 - Jul 2003</p>
<p style="text-align: justify;">WebLogic Server 7.0 - Jun 2002</p>
<p style="padding-left: 30px; text-align: center;">[button url="http://tekslate.com/weblogic-server-administration-training/" class="other" bg="" hover_bg="" size="0px" color="#f7f7f7" radius="0px" width="0px" height="0px" target="_self"] Oracle Weblogic Training [/button]</p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;">Weblogic Server Core Components</span></h2>
<p style="text-align: justify;">Oracle WebLogic Server supports Oracle, DB2, MS SQL Server, MySQL Enterprise and other JDBC-compliant databases. Oracle Weblogic Platform also includes:</p>
<ul style="text-align: justify;">
<li>Core Components like Enterprise Grid Messaging, JMS Messaging Standard, JRockit, Oracle Top Link, Oracle WebLogic Server Web Services, Tuxedo</li>
</ul>
<ul style="text-align: justify;">
<li>Supported open standards like <a href="https://tekslate.com/administering-bpel-process-service-components-engines/" target="_blank" rel="noopener">BPEL</a> &amp; BPEL-J, ebXML, JAAS, Java EE 1.3 &amp; 1.4 &amp; 5, JPA 1.0 (2.0 available), JMX and SNMP</li>
</ul>
<ul style="text-align: justify;">
<li>Native support for: SOAP, UDDI, WSDL, WSRP, WS-Security, XSLT and XQuery</li>
</ul>
<h3 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Standards support by version</strong></span></h3>
<p style="text-align: justify;">The table below lists major standards supported by the WebLogic Server product version.</p>
<table>
<tbody>
<tr>
<td>Standard</td>
<td>WLS 7.0</td>
<td>WLS 8.1</td>
<td>WLS 9.0</td>
<td>WLS 10.0</td>
<td>WLS 10.3</td>
</tr>
<tr>
<td>Java</td>
<td>1.3</td>
<td>1.4</td>
<td>5</td>
<td>5</td>
<td>6</td>
</tr>
<tr>
<td>Java EE</td>
<td>1.3</td>
<td>1.3</td>
<td>1.4</td>
<td>5</td>
<td>5</td>
</tr>
</tbody>
</table>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;">Overview of WebLogic Server System Administration</span></h2>
<p style="text-align: justify;">System administration of WebLogic Server includes a wide range of tasks: creating WebLogic Server domains; deploying applications; migrating domains from development environments to production environments; monitoring and managing the performance of the run-time system, and diagnosing and troubleshooting problems. (A WebLogic Server <strong>domain</strong> is a collection of WebLogic Server services designed for a specific purpose. For example, you might create one domain to provide an employee portal and another domain to provide business services to your customers.)</p>
<p style="text-align: justify;">Because the WebLogic Server management system is based on Java EE and other standards, it integrates with systems that are frequently used to manage other software and hardware components. Also, WebLogic Server includes several of its own standards-based, extensible utilities. Alternatively, you can use APIs to create custom management utilities.</p>
<p style="text-align: justify;">At the end of this module you will be able to:</p>
<ul style="text-align: justify;">
<li>What are Software Component Tiers</li>
<li>The Web &amp; Application Server and Differences</li>
<li>J2EE Platform and WebLogic Server</li>
<li>Weblogic Server Versions &amp; Capabilities</li>
</ul>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;">Software Component Tiers</span></h2>
<p style="text-align: justify;">The software components of a multitier architecture consist of three tiers:</p>
<ul style="text-align: justify;">
<li>The client tier contains programs executed by users, including Web browsers and network-capable application programs. These programs can be written in virtually any programming language.</li>
</ul>
<ul style="text-align: justify;">
<li>The middle tier contains <a href="https://tekslate.com/configuring-weblogic-server-environment/" target="_blank" rel="noopener">WebLogic Server</a> and other servers that are addressed directly by clients, such as existing Web servers or proxy servers.</li>
</ul>
<ul style="text-align: justify;">
<li>The backend tier contains enterprise resources, such as database systems, mainframe and legacy applications, and packaged enterprise resource planning (ERP) applications.</li>
</ul>
<p style="text-align: justify;"><img class="aligncenter wp-image-2254" title="Weblogic Server Component Tiers" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/126.png" alt="Weblogic Server Component Tiers" width="352" height="306" /></p>
<p style="text-align: center;">[button url="http://tekslate.com/tutorials/weblogic-tutorials-how-to/" class="other" bg="" hover_bg="" size="0px" color="#f7f7f7" radius="0px" width="0px" height="0px" target="_self"] Oracle Weblogic Tutorials [/button]</p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;">The Web Server</span></h2>
<p style="text-align: justify;">A Web server handles the HTTP protocol. When the Web server receives an HTTP request, it responds with an HTTP response, such as sending back an <a href="https://tekslate.com/tutorials/html-tutorials/" target="_blank" rel="noopener">HTML</a> page. To process a request, a Web server may respond with a static HTML page or image, send a redirect, or delegate the dynamic response generation to some other program such as CGI scripts, JSPs (JavaServer Pages), servlets, ASPs (Active Server Pages), server-side JavaScripts, or some other server-side technology. Whatever their purpose, such server-side programs generate a response, most often in HTML, for viewing in a Web browser.</p>
<p style="text-align: justify;">Understand that a Web server's delegation model is fairly simple. When a request comes into the Web server, the Web server simply passes the request to the program best able to handle it. The Web server doesn't provide any functionality beyond simply providing an environment in which the server-side program can execute and pass back the generated responses. The server-side program usually provides for itself such functions as transaction processing, database connectivity, and messaging.</p>
<p style="text-align: justify;">While a Web server may not itself support transactions or database connection pooling, it may employ various strategies for fault tolerance and scalability such as load balancing, caching, and clustering&mdash;features often erroneously assigned as features reserved only for application servers.</p>
<ul style="text-align: justify;">
<li>Provides Web content</li>
<li>Communicate via HTTP, FTP, etc</li>
<li>Can handle CGI requests</li>
</ul>
<p style="text-align: justify;">Proxy some requests to Application Servers</p>
<p style="text-align: justify;"><img class="wp-image-2255 aligncenter" title="Weblogic Server" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/217.png" alt="Weblogic Server" width="508" height="272" /></p>
<h2 style="text-align: justify;"><span style="color: #e03e2d; font-size: 14pt;">The Application Server</span></h2>
<p style="text-align: justify;"><strong>&nbsp;</strong>As for the application server, according to our definition, an application server exposes business logic to client applications through various protocols, possibly including HTTP. While a Web server mainly deals with sending HTML for display in a Web browser, an application server provides access to business logic for use by client application programs. The application program can use this logic just as it would call a method on an object (or a function in the procedural world).</p>
<p style="text-align: justify;">Such application server clients can include GUIs (graphical user interface) running on a PC, a Web server, or even other application servers. The information traveling back and forth between an application server and its client is not restricted to simple display markup. Instead, the information is program logic. Since the logic takes the form of data and method calls and not static HTML, the client can employ the exposed business logic however it wants.</p>
<p style="text-align: justify;">In most cases, the server exposes this business logic through a component API, such as the EJB (Enterprise JavaBean) component model found on J2EE (Java 2 Platform, Enterprise Edition) application servers. Moreover, the application server manages its own resources. Such gate-keeping duties include security, transaction processing, resource pooling, and messaging. As&nbsp;a Web server, an application server may also employ various scalability and fault-tolerance techniques.</p>
<p style="text-align: justify;"><img class="wp-image-2256 aligncenter" title="Weblogic Application Server" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/317.png" alt="Weblogic Application Server" width="388" height="313" /></p>
<h4 style="text-align: justify;"><span style="font-size: 12pt; color: #e03e2d;"><strong>Application servers:</strong></span></h4>
<ul style="text-align: justify;">
<li>Provide services that support the execution and availability of deployed applications</li>
<li>Handle heavier processing chores than Web servers</li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e03e2d; font-size: 12pt;"><strong>Differences Between Application Server vs. Web Server</strong></span></h3>
<h4 style="text-align: justify;"><span style="color: #e03e2d;"><strong>&nbsp;</strong><strong>What is it?</strong></span></h4>
<p style="text-align: justify; padding-left: 30px;">Application Server: A server that exposes business logic to client applications through various protocols including HTTP.</p>
<p style="text-align: justify; padding-left: 30px;">Web Server: A server that handles HTTP protocol.</p>
<h4 style="text-align: justify;"><span style="color: #e03e2d;"><strong>Functions:</strong></span></h4>
<p style="text-align: justify; padding-left: 30px;">Application Server: To deliver various applications to another device, it allows everyone in the network to run software off of the same machine.</p>
<p style="text-align: justify; padding-left: 30px;">Web Server: Keeping HTML, PHP, ASP, etc. files available for the web browsers to view when a user accesses the site on the web, handles HTTP requests from clients.</p>
<h4 style="text-align: justify;"><span style="color: #e03e2d;"><strong>Clients can include:</strong></span></h4>
<p style="text-align: justify; padding-left: 30px;">Application Server:&nbsp; GUI&rsquo;s, Web Servers</p>
<p style="text-align: justify; padding-left: 30px;">Web Server: &nbsp;HTTP, HTML</p>
<h4 style="text-align: justify;"><span style="color: #e03e2d;"><strong>Functionality:</strong></span></h4>
<p style="text-align: justify; padding-left: 30px;">Application Server:&nbsp; Adds functionality</p>
<p style="text-align: justify; padding-left: 30px;">Web Server: Does not add any</p>
<h4 style="text-align: justify;"><span style="color: #e03e2d;"><strong>Examples of popular server products:</strong></span></h4>
<p style="text-align: justify; padding-left: 30px;">Application Server:&nbsp; Oracle OC4J(Oracle), Sybase Application server(Sybase), SAP Netweaver (SAP), <a title="JBoss" href="jboss" target="_blank" rel="noopener"><span style="color: #000000;">Jboss</span></a> (Red Hat), WebLogic Server (Oracle), WebSphere (IBM)</p>
<p style="text-align: justify; padding-left: 30px;">Web Server: &nbsp;Microsoft IIS, Apache Tomcat</p>
<h2 style="text-align: justify;"><strong>&nbsp;</strong><span style="color: #e03e2d; font-size: 14pt;"><strong>J2EE Platform and WebLogic Server</strong></span></h2>
<p style="text-align: justify;"><strong>&nbsp;</strong>WebLogic Server J2EE applications are based on standardized, modular components. WebLogic Server provides a complete set of services for those modules and handles many details of application behavior automatically, without requiring programming.</p>
<p style="text-align: justify;">J2EE includes deployment specifications for Web applications, EJB modules, Enterprise applications, client applications, and connectors. J2EE does not specify <em>how</em> an application is deployed on the target server&mdash;only how a standard module or application is packaged.</p>
<p style="text-align: justify;">Java is platform independent, so you can edit and compile code on any platform, and test your applications on development WebLogic Servers running on other platforms. For example, it is common to develop WebLogic Server applications on a PC running Windows or Linux, regardless of the platform where the application is ultimately deployed.</p>
<h4 style="text-align: justify;"><span style="color: #e03e2d;"><strong>Summary:</strong><strong>&nbsp;</strong></span></h4>
<ul style="text-align: justify;">
<li>Covered Software Component Tiers</li>
<li>Covered Overview and Differences of Web Server and Application Server</li>
<li>Overview of J2EE Platform and WebLogic Server</li>
</ul>1b:T18b0,<h2><span style="font-size: 14pt; color: #e03e2d;"><strong>Replicating session in JBoss&nbsp;</strong></span></h2>
<p>In this tutorial, we will see how to do&nbsp;Session replication in Weblogic Cluster You now need to use the&nbsp;node1&nbsp;and&nbsp;node2&nbsp;created before In&nbsp;session-test.war/WEB-INF/web.xml, add:</p>
<p style="padding-left: 30px; text-align: left;">&nbsp; &lt;web-app&gt;</p>
<p style="padding-left: 30px; text-align: left;">&nbsp; &lt;display-name&gt;Session Test&lt;/display-name&gt;</p>
<p style="padding-left: 30px; text-align: left;">&nbsp; &lt;description&gt;...&lt;/description&gt;</p>
<p style="padding-left: 30px; text-align: left;">&nbsp; &lt;distributable/&gt; &lt;!-- &nbsp;--&gt;</p>
<p style="padding-left: 30px; text-align: left;">&nbsp; ...</p>
<p style="padding-left: 30px; text-align: left;">&lt;/web-app&gt;</p>
<table style="width: 690px;" width="690">
<tbody>
<tr>
<td style="width: 675.219px;">Your application&rsquo;s HTTP sessions now use the distributed cache.</td>
</tr>
</tbody>
</table>
<p>Now:</p>
<ul>
<li>Disable sticky sessions (optional)</li>
<li>Redeploy session-test.war to node1/deploy and node2/deploy directories</li>
<li>Restart and retest You can now see that your application is fault-tolerant, it supports failover AND state replication Problems with sticky sessions?</li>
<li>Uneven distribution of load</li>
<li>If one instance goes down, all of its sessions go with it</li>
</ul>
<p>You can configure session replication here:</p>
<ul>
<li>Sessions are replicated by&nbsp;all/deploy/cluster/jboss-cache-manager.sar:</li>
<li>Cache Mode:&nbsp;REPL_SYNC,&nbsp;REPL_ASYNC</li>
<li>Caching Configuration: replication queue</li>
<li>Cluster Name and Configuration: communication</li>
</ul>
<blockquote>
<p style="text-align: center;"><em>Inclined to build a profession as JBoss Developer? Then here is the blog post on, explore <a title="JBoss Training" href="jboss-training" target="_blank" rel="noopener"><span style="color: #e03e2d;"><strong>JBoss Training</strong></span></a></em></p>
</blockquote>
<ul>
<li>Configure session replication per app in WEB-INF/jboss-web.xml</li>
</ul>
<p style="padding-left: 30px;">Replication trigger:&nbsp;SET,&nbsp;SET_AND_GET,&nbsp;SET_AND_NON_PRIMITIVE_GET,&nbsp;ACCESS</p>
<p style="padding-left: 30px;">Replication granularity:&nbsp;SESSION,&nbsp;ATTRIBUTE,&nbsp;FIELD</p>
<p>deploy/cluster/jboss-cache-manager.sar/META-INF/jboss-cache-manager-jboss-beans.xml:</p>
<p style="padding-left: 30px; text-align: justify;">&lt;deployment ...&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; ...</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp;&lt;bean name="CacheConfigurationRegistry" ...&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; ...</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp;&lt;property name="newConfigurations"&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &lt;map keyClass="java.lang.String" valueClass="org.jboss.cache.config.Configuration"&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &lt;entry&gt;&lt;key&gt;standard-session-cache&lt;/key&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp;&lt;value&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp;&lt;bean name="StandardSessionCacheConfig" class="org.jboss.cache.config.Configuration"&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp; ...</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp;&lt;property name="clusterName"&gt;${jboss.partition.name:DefaultPartition}-SessionCache&lt;/property&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp; &lt;property name="multiplexerStack"&gt;${jboss.default.jgroups.stack:udp}&lt;/property&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp; &lt;property name="fetchInMemoryState"&gt;true&lt;/property&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp; &lt;property name="nodeLockingScheme"&gt;PESSIMISTIC&lt;/property&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp; &lt;property name="isolationLevel"&gt;REPEATABLE_READ&lt;/property&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp; &nbsp;&lt;property name="useLockStriping"&gt;false&lt;/property&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp; &nbsp;&lt;property name="cacheMode"&gt;REPL_ASYNC&lt;/property&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp; &nbsp;&lt;property name="syncReplTimeout"&gt;17500&lt;/property&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp; &nbsp;&lt;property name="lockAcquisitionTimeout"&gt;15000&lt;/property&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp; &nbsp; &nbsp;...</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp; &nbsp;&lt;/bean&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp; &nbsp;&lt;/value&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp;&nbsp;&nbsp;&nbsp; &lt;/entry&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp;&nbsp;&nbsp;&nbsp; ...</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp; &lt;/map&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp; &lt;/property&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp; ...</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp;&lt;/bean&gt;</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp;...</p>
<p style="padding-left: 30px; text-align: justify;">&nbsp; &nbsp;&lt;/deployment&gt;</p>
<p>You can also specify for each application some parameters: WEB-INF/jboss-web.xml:</p>
<p style="padding-left: 30px;">&lt;jboss-web&gt;</p>
<p style="padding-left: 30px;">&nbsp;&lt;replication-config&gt;</p>
<p style="padding-left: 30px;">&nbsp;&lt;replication-trigger&gt;SET_AND_NON_PRIMITIVE_GET&lt;/replication-trigger&gt;</p>
<p style="padding-left: 30px;">&nbsp;&lt;replication-granularity&gt;SESSION&lt;/replication-granularity&gt;</p>
<p style="padding-left: 30px;">&nbsp;&lt;/replication-config&gt;</p>
<p style="padding-left: 30px;">&nbsp;&lt;/jboss-web&gt;</p>1c:T4def,<p>Preparing for an interview about managing Java applications at the enterprise level? You may face questions about the <strong>WebLogic Server</strong>, a widely used Java application server. To impress your interviewer and get the job, prepare by mastering <strong>WebLogic Architecture</strong>, features, and configuration settings. This guide provides expert tips and common interview questions.</p>
<p>In this article, we will cover the following:</p>
<ul>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#oracle">WebLogic Interview Questions and Answers</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#experienced">WebLogic Interview Questions for Experienced</a></span></li>
</ul>
<table style="border-collapse: collapse; width: 100%; height: 120px;" border="1px" cellpadding="10">
<tbody>
<tr style="height: 37px; background-color: #ecf0f1; border-color: #ced4d9; border-style: solid;">
<td style="width: 98.3496%;">
<h3 style="text-align: center;"><span style="font-size: 18px;"><strong>Most Frequently Asked WebLogic Interview Questions&nbsp;</strong></span></h3>
</td>
</tr>
<tr style="height: 37px; border-color: #ced4d9; border-style: solid;">
<td style="width: 98.3496%;">
<ul>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#server-hang">What can be the reasons for the Server hang?</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#memory-leak">What is a memory leak?</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#troubleshoot">How to troubleshoot it?</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#cluster-communication">How does Cluster Communication Happen?</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#http-tunnelling">What is HTTP tunnelling? How can we configure it on WebLogic?</a></span></li>
</ul>
</td>
</tr>
</tbody>
</table>
<h2 style="text-align: justify;"><span style="font-size: 24px; color: #236fa1;"><a id="oracle"></a>WebLogic Interview Questions and Answers</span></h2>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q1) How do you differentiate between a server hang and a server crash issue?</strong></span></h3>
<p style="text-align: justify;"><strong><span style="color: #000000;">Ans: </span></strong></p>
<ul>
<li style="text-align: justify;"><span style="color: #000000;">When a server crashes, the JAVA process no longer exists. When the server is hung, it stops responding.</span></li>
<li style="text-align: justify;"><span style="color: #000000;">We can use the WebLogic ADMIN utility to ping the server. In case of a hang situation, we can take multiple thread dumps and analyze the cause of the hang.</span></li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q2) What can be the various reasons for a server crash?</strong></span></h3>
<p><span style="color: #000000; font-size: 12pt;"><strong>Ans:</strong></span></p>
<ul style="text-align: justify;">
<li style="text-align: justify;"><span style="color: #000000;">Native IO</span></li>
<li style="text-align: justify;"><span style="color: #000000;">SSL Native Libraries</span></li>
<li style="text-align: justify;"><span style="color: #000000;">JVM</span></li>
<li style="text-align: justify;"><span style="color: #000000;">Supported Configuration</span></li>
<li style="text-align: justify;"><span style="color: #000000;">JDBC Driver issue</span></li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q3) How do you troubleshoot a crash?</strong></span></h3>
<p><span style="color: #000000; font-size: 12pt;"><strong>Ans:</strong></span></p>
<ul>
<li><span style="color: #000000;">JVM crash generates a hs_err_pid file. We need to look into the stack trace of the hs_err_pid file.</span></li>
<li><span style="color: #000000;">If the thread is from a native<span style="color: #236fa1;"><a style="color: #236fa1;" href="https://en.wikipedia.org/wiki/Input/output" target="_blank" rel="nofollow"> i/o</a></span>, we need to disable native io.</span></li>
<li><span style="color: #000000;">if the stack trace is from the driver, we need to get in touch with the drive team.</span></li>
<li><span style="color: #000000;">Quite possibly it's a problem with the driver. Changing the type of driver can be a workaround.</span></li>
<li><span style="color: #000000;">If the thread shows it coming from an optimized code, we can turn off optimization. </span><span style="text-align: justify;">If the stack is from native calls of the application, it's a bug with the application and it has to b modified.</span></li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q4) How do you troubleshoot Server Hang?</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Ans:</strong> We can use Java WebLogic. Admin PING to check if we get a normal response.</span> <span style="color: #000000;"> We need to take multiple thread dumps with kill -3 paid on Unix and CTLR Break on Windows.</span> <span style="color: #000000;"> Analyze the thread dump to find the root cause.</span></p>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong><a id="server-hang"></a>Q5) What can be the reasons for the Server hang?</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Ans:</strong> Memory leak, database query taking a long time to return, Deadlock.</span></p>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong><a id="memory-leak"></a>Q6) What is a memory leak?</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Ans:</strong> A memory leak is when objects are not removed from the heap even when they are not required.</span></p>
<table style="border-collapse: collapse; width: 100%; background-color: #ecf0f1; border-color: #ced4d9; border-style: solid; height: 58px;" border="1px" cellpadding="5">
<tbody>
<tr style="height: 58px;">
<td style="width: 98.3496%; text-align: center; height: 58px;"><em>Inclined to build a profession as Weblogic Developer? Then here is the blog post on, explore <span style="color: #236fa1;"><a style="color: #236fa1;" title="Weblogic Training" href="https://tekslate.com/weblogic-server-administration-training" target="_blank"><strong>Weblogic Training</strong></a></span></em></td>
</tr>
</tbody>
</table>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q7) What are the various causes for OUT OF MEMORY?</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Ans:</strong></span></p>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Insufficient heap size, not able to match the extra load.</span></li>
<li><span style="color: #000000;">Objects lying too long, like HTTP Sessions.</span></li>
<li><span style="color: #000000;">Memory leak in application code.</span></li>
<li><span style="color: #000000;">Full GC not happening due to JVM Bug.</span></li>
</ul>
<p><strong style="color: #e67e23; font-size: 18px;">Q8) How to troubleshoot and overcome such issues?</strong></p>
<p><span style="color: #000000; font-size: 12pt;"><strong>Ans:</strong></span></p>
<ul>
<li><span style="color: #000000;">Gather memory data by enabling GC verbose.</span></li>
<li><span style="color: #000000;">If it's due to Http Session, timing out the HTTP session after a certain interval might help.</span></li>
<li><span style="color: #000000;">Look into the code for JDBC connection handling.</span></li>
<li><span style="color: #000000;">Optimizing the heap size according to the load.</span></li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q9) When does High CPU Usage occur?</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Ans:</strong> It occurs when one process or one thread utilizes an unexpectedly high proportion of CPU.</span></p>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong><a id="troubleshoot"></a>Q10) How to troubleshoot it?</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Ans:</strong> In the Solaris environment, we need to take pstack and prstack and see what the threads are doing.</span> <span style="color: #000000;"> In Windows, we need to use pslist and process explorer.</span></p>
<h2 style="text-align: justify;"><span style="color: #236fa1; font-size: 24px;"><a id="experienced"></a>WebLogic Interview Questions for Experienced</span></h2>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q11) What is Clustering and what is achieved through it?</strong></span></h3>
<p style="text-align: justify;"><strong><span style="color: #000000;">Ans: </span></strong></p>
<ul>
<li style="text-align: justify;"><span style="color: #000000;">Clustering is the grouping together of servers for the purpose of high availability and scalability.</span></li>
<li style="text-align: justify;"><span style="color: #000000;">Load balancing and Failover is achieved.</span></li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong><a id="cluster-communication"></a>Q12) How does Cluster Communication Happen?</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Ans:</strong> Members of the Cluster communicate over the Cluster Multicast IP and Port by sending periodic heartbeat messages.</span></p>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q13) What is the difference between the Sun JVM and BEA JRockit JVM?</strong></span></h3>
<p style="text-align: justify;"><strong><span style="color: #000000;">Ans:</span></strong></p>
<ul>
<li style="text-align: justify;"><span style="color: #000000;">The most well know <span style="color: #236fa1;"><a style="color: #236fa1;" href="https://www.javatpoint.com/jvm-java-virtual-machine" target="_blank" rel="nofollow">JVM</a></span> is the implementation from Sun. The Sun JVM is called HotSpot. The Sun JVM is shipped in the Java Developer&rsquo;s Kit (JDK) and Java Runtime Environment (JRE) from Sun.</span></li>
<li style="text-align: justify;"><span style="color: #000000;">The BEA JRockit JVM from BEA systems is optimized for reliability and performance for server-side applications. To achieve this, BEA JRockit JVM uses technologies such as code generation, hot spot detection, code optimization, advanced garbage collection algorithms, and tight operating system integration.</span></li>
</ul>
<p style="text-align: justify;"><em><span style="color: #000000;"><strong>Tuning JVM Parameters:</strong></span></em></p>
<p style="padding-left: 30px; text-align: justify;"><span style="color: #000000;">If you have a single processor, a single-thread machine then you should use the serial collector (default for some configurations, can be enabled explicitly for with -XX:+UseSerialGC). For multiprocessor machines where your workload is basically CPU bound, use the parallel collector. This is enabled by default if you use the -server flag, or you can enable it explicitly with -XX:+UseParallelGC. If you&rsquo;d rather keep the GC pauses shorter at the expense of using more total CPU time for GC, and you have more than one CPU, you can use the concurrent collector (-XX:+UseConcMarkSweepGC). Note that the concurrent collector tends to require more RAM allocated to the JVM than the serial or parallel collectors for a given workload because some memory fragmentation can occur.</span></p>
<table style="border-collapse: collapse; width: 100%; height: 58px; background-color: #ecf0f1; border-color: #CED4D9; border-style: solid;" border="1px" cellpadding="5">
<tbody>
<tr>
<td style="width: 98.3496%; text-align: center;"><em>Checkout Our Blog on <span style="color: #236fa1;"><a style="color: #236fa1;" title="WebLogic Tutorial" href="https://tekslate.com/tutorialsweblogic-tutorials-how-to" target="_blank"><strong>WebLogic Tutorial</strong></a></span></em></td>
</tr>
</tbody>
</table>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q14) How do you do performance tuning of WLS?</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Ans:</strong> It can be categorized into 4 parts.</span> <span style="color: #000000;"> a. Application Tuning.</span> <span style="color: #000000;"> jsp precompilation, ejb pool size cache...</span></p>
<ul style="text-align: justify;">
<li><span style="color: #000000;">OS Tuning</span></li>
</ul>
<p style="padding-left: 30px; text-align: justify;"><span style="color: #000000;">Setting the TCP IP parameter.</span> <span style="color: #000000;"> tcp_time_wait_interval</span> <span style="color: #000000;"> tcp_conn_req_max_q</span></p>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Core Server Tuning.</span></li>
</ul>
<p style="padding-left: 30px; text-align: justify;"><span style="color: #000000;">tune work manager, tune chuck size and chunk pool size, using performance packs, connection backlog buffering.</span></p>
<ul style="text-align: justify;">
<li><span style="color: #000000;">JVM Tuning</span></li>
</ul>
<p style="padding-left: 30px; text-align: justify;"><span style="color: #000000;">tuning gc strategy, monitoring garbage collection.</span></p>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q15) What is the difference between the Development mode and Production mode of the Weblogic Server?</strong></span></h3>
<p style="text-align: justify;"><strong><span style="color: #000000;">Ans: </span></strong></p>
<p style="text-align: justify;"><span style="color: #000000;"><em><strong>Development Mode:</strong></em></span></p>
<ul>
<li><span style="color: #000000;">The default JDK for the development domain is Sun Hotspot.</span></li>
<li><span style="color: #000000;">You can use the demo certificates for SSL.</span></li>
<li><span style="color: #000000;">Auto deployment(to admin server only) is enabled.</span></li>
<li><span style="color: #000000;">Server instances rotate their log files on start-up.</span></li>
<li><span style="color: #000000;">Admin Server uses an automatically created boot.properties during start-up.</span></li>
<li><span style="color: #000000;">The default maximum capacity for JDBC Datasource is 15.</span></li>
<li><span style="color: #000000;">The debug flag which is used to start the WebLogic Workshop Debugger is enabled.</span></li>
<li><span style="color: #000000;">In Development Mode any configuration change is done by a user who doesn&rsquo;t need him to take a Lock and Edit session.</span></li>
<li><span style="color: #000000;">Availability of web service test client.</span></li>
<li><span style="color: #000000;">Node manager username and password: Default Admin credentials.</span></li>
<li><span style="color: #000000;">Availability of Classloader Analysis Tool: Yes.</span></li>
<li><span style="color: #000000;">Default start parameters when using Sun JDK and the default start WebLogic script: java -client -Xms256m -Xmx512m -XX: CompileThreshold=8000 -XX: PermSize=128m -XX: MaxPermSize=256m.</span></li>
</ul>
<p style="text-align: justify;"><span style="color: #000000;"><em><strong>Production Mode:</strong></em></span></p>
<ul style="text-align: justify;">
<li><span style="color: #000000;">The default JDK for the production domain is JRockit.</span></li>
<li><span style="color: #000000;">If you use the demo certificates for SSL a warning is displayed.</span></li>
<li><span style="color: #000000;">Auto deployment(to admin server only) is disabled.</span></li>
<li><span style="color: #000000;">Server instances rotate their log files when it reaches 5MB.</span></li>
<li><span style="color: #000000;">Admin Server prompts for username and password during start-up.</span></li>
<li><span style="color: #000000;">The default maximum capacity for JDBC Datasource is 25.</span></li>
<li><span style="color: #000000;">The debug flag which is used to start the WebLogic Workshop Debugger is disabled.</span></li>
<li><span style="color: #000000;">In Production Mode, the user needs to procure a Lock and Edit session before trying to make any configurational changes.</span></li>
<li><span style="color: #000000;">No Availability of web service test clients.</span></li>
<li><span style="color: #000000;">Node manager username and password: Randomly generated</span></li>
<li><span style="color: #000000;">Availability of Classloader Analysis Tool: No.</span></li>
<li><span style="color: #000000;">Default start parameters when using Sun JDK and the default start WebLogic script: java -server -Xms256m -Xmx512m -XX: MaxPermSize=256m.</span></li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong><a id="http-tunnelling"></a>Q16) What is HTTP tunnelling? How can we configure it on WebLogic?</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Ans: </strong></span></p>
<ul>
<li style="text-align: justify;"><span style="color: #000000;">HTTP tunnelling provides a way to simulate a stateful socket connection between WebLogic Server and a Java client when your only option is to use the HTTP protocol. It is generally used to tunnel through an HTTP port in a security firewall. HTTP is a stateless protocol, but WebLogic Server provides tunnelling functionality to make the connection appear to be a regular T3Connection.</span> <span style="color: #000000;"> Steps to configure Http tunnelling.</span></li>
<li style="text-align: justify;"><span style="color: #000000;">Login into the Admin Console, click on the server on which you want to enable the HTTP Tunneling feature</span> <span style="color: #000000;"> Click on the Protocols tab. General? check the &ldquo;Enable Tunneling&rdquo; checkbox.</span></li>
<li style="text-align: justify;"><span style="color: #000000;">Now you can communicate with the JVMs (Server Instances) using protocols other than t3</span></li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q17) What is the difference between T3 and HTTP protocol?</strong></span></h3>
<p style="text-align: justify;"><strong><span style="color: #000000;">Ans: </span></strong></p>
<ul>
<li style="text-align: justify;"><span style="color: #000000;">WebLogic uses the T3 protocols for internal and external connections to the servers. The T3 protocol often is used in WebLogic&rsquo;s implementation of RMI. Proprietary of <span style="color: #236fa1;"><a style="color: #236fa1;" title="WebLogic Server Installation" href="https://tekslate.com/weblogic-server-installation/" target="_blank">WebLogic Server</a></span>.</span></li>
<li style="text-align: justify;"><span style="color: #000000;">HTTP protocols are used primarily for HTTP communication between the browser and the web server. Standard follows the W3C (World Wide Web Consortium).</span></li>
</ul>
<p style="text-align: justify;"><span style="color: #000000;"><span style="color: #e67e23;"><em><strong><span style="color: #000000;">Note</span></strong></em>:</span> All of these protocols are, by default, multiplexed over the same connection to the server&rsquo;s address and port. So you can access a web page hosted by the server using a URL such as http://host:port/page.jsp. An external client can set up an initial JNDI context to a server using the URL t3://host: port/. All that has changed is the protocol over which the client must communicate with the server.</span></p>1d:T8134,<h2 style="text-align: justify;"><span style="color: #236fa1; font-size: 24px;"><strong>Oracle Weblogic Interview Question and Answers</strong></span></h2>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q1) What is the Weblogic server?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;">A Weblogic server is an instance of a Java process executing in a JVM. A <span style="color: #236fa1;"><a style="color: #236fa1;" title="WebLogic Training" href="https://tekslate.com/weblogic-server-administration-training/" target="_blank">Weblogic</a></span> server is a software application that runs as a middle tier between the back-end database and related applications and browser-based thin clients.</li>
<li style="text-align: justify;">Two Types of servers:</li>
</ul>
<ol>
<li style="text-align: justify;">Administration server</li>
<li style="text-align: justify;">Managed server</li>
</ol>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q2) What are deployment descriptors?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans:</strong> Modules and applications have deployment descriptors&mdash;XML documents&mdash;that describe the contents of the directory or JAR file. Deployment descriptors are text documents formatted with XML tags. The J2EE specifications define standard, portable deployment descriptors for J2EE modules and applications.</p>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q3) What is the default JVM used for Weblogic?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans:</strong> Sun Hotspot JDK default for Development installation, JRockit is for Production mode for WebLogic 11g and 12c. The operating environment also factors to select the Certified JDK JVM. If you want to change you need to specify it.</p>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q4) How to configure a DB connection pool?</strong></span></h3>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Ans:</strong></span></p>
<ul>
<li style="text-align: justify;">Choose the DB type (Oracle, Sybase, Mysql, etc...).</li>
<li style="text-align: justify;">Then choose the driver type for the DB.</li>
<li style="text-align: justify;">Give the connection pool name.</li>
<li style="text-align: justify;">Give the DB Service ID, schema name, and password.</li>
<li style="text-align: justify;">Then it will ask for testing the connection pool/DataSource.</li>
<li style="text-align: justify;">After a successful connection, it will ask you to create and deploy the connection pool target to the server or cluster. After creating a new connection pool always point the JDBC store to the connection pool created. This is required because A JMS JDBC store will be used for persistent messaging.</li>
<li style="text-align: justify;">After each <span style="color: #236fa1;"><a style="color: #236fa1;" href="http://www.oracle.com/technetwork/java/javase/jdbc/index.html" target="_blank" rel="nofollow">JDBC</a></span> connection, we must restart the server if there are startup classes dependency exists otherwise no restart is required in WebLogic 9. x and higher versions.</li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q5) What are the modes of operation for Weblogic server domains?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans:</strong> There are two modes: Development and production mode:</p>
<p><span style="color: #000000;"><em><strong>Development mode:</strong></em></span></p>
<p style="text-align: justify;">&nbsp; &nbsp; &nbsp;You use development mode while you are developing your applications. Development mode uses a relaxed security configuration and enables you to auto-deploy applications.</p>
<p style="padding-left: 20px; text-align: justify;">You can use the demonstration digital certificates provided by the WebLogic Server security services. With these certificates, you can design your application to work within environments secured by SSL.</p>
<p style="padding-left: 20px; text-align: justify;">WebLogic Server instances can automatically deploy and update applications that reside in the domain_name/applications directory.</p>
<p style="padding-left: 20px; text-align: justify;">When you start a server, the server automatically renames (rotates) its local server log file as server-name.log.n. For the remainder of the server session, the server rotates its local log file whenever the size of the file reaches 500 kilobytes.</p>
<p style="padding-left: 20px; text-align: justify;">The default number of threads available to Execute Queues is 15.</p>
<p style="padding-left: 20px; text-align: justify;">The default capacity is 15 JDBC connections.</p>
<p><em><span style="color: #000000;"><strong>Production mode:</strong></span></em></p>
<p style="padding-left: 20px; text-align: justify;">You use production mode when your application is running in its final form. A production domain uses full security and may use clusters or other advanced features.</p>
<p style="padding-left: 20px; text-align: justify;">A warning message is displayed if you use the demonstration digital certificates.</p>
<p style="padding-left: 20px; text-align: justify;">The auto-deployment feature is disabled, so you must use the <a href="https://tekslate.com/system-administration-tools/" target="_blank"><span style="color: #236fa1;">WebLogic Server Administration</span></a> Console or the Weblogic. Deployer tool.</p>
<p style="padding-left: 20px; text-align: justify;">A server rotates its local log file after the size of the file reaches 500 kilobytes.</p>
<p style="padding-left: 20px; text-align: justify;">The default number of threads available to Execute Queues is 25.</p>
<p style="padding-left: 20px; text-align: justify;">The default capacity is 25 JDBC connections.</p>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q6) What is a domain template?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;">A domain template is a jar file default one is a wls.jar file, which is '/bea/weblogic81/common/templates/domains/, it has all the features that are required for the standard Weblogic domain, we can even create a domain template of our own configuration. by this template, we don&rsquo;t configure every time we create a new domain.</li>
<li style="text-align: justify;">By using a template, we can</li>
</ul>
<ol>
<li style="text-align: justify;">Create servers</li>
<li style="text-align: justify;">Clusters</li>
<li style="text-align: justify;">Machines</li>
<li style="text-align: justify;">Configure services such as JMS, JDBC, and Applications</li>
</ol>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q7) What is the function of T3 in the WebLogic Server?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;">The enhancements support for WebLogic Server messages is provided by T3. These enhancements include object replacement, which works in <span style="color: #236fa1;"><a style="color: #236fa1;" href="https://docs.oracle.com/cd/E13222_01/wls/docs61/intro/chap1.html" target="_blank" rel="nofollow">WebLogic Server </a></span>clusters&rsquo; context and HTTP. Java Object Serialization, RMI predation is done by T3. T3 is a superset of Java Object. Serialization and RMI can be done over T3.</li>
<li style="text-align: justify;">Between WebLogic Servers, and between programmatic clients &amp; a WebLogic Server cluster, T3 is mandated. To communicate between processes and WebLogic Server, the protocols HTTP and IIOP can be used and optional. The HTTP is used to communicate between a browser and a WebLogic Server. The IIOP is used to communicate between an Object Request Broker and WebLogic Server.</li>
</ul>
<h3 style="text-align: justify;"><span style="font-size: 18px; color: #e67e23;"><strong>Q8) How do stubs work in a WebLogic Server cluster?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;">The enhancements support for WebLogic Server messages is provided by T3. These enhancements include object replacement, which works in WebLogic Server clusters&rsquo; context and HTTP. Java Object Serialization, RMI predation is done by T3. T3 is a superset of Java Object. Serialization and RMI can be done over T3.</li>
<li style="text-align: justify;">Between WebLogic Servers, and between programmatic clients &amp; a WebLogic Server cluster, T3 is mandated. To communicate between processes and WebLogic Server, the protocols HTTP and IIOP can be used and optional. The HTTP is used to communicate between a browser and a WebLogic Server. The<span style="color: #236fa1;"><a style="color: #236fa1;" href="http://whatis.techtarget.com/definition/IIOP-Internet-Inter-ORB-Protocol" target="_blank" rel="nofollow"> IIOP</a></span> is used to communicate between an Object Request Broker and WebLogic Server.</li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q9) What happens when a failure occurs and the stub cannot connect to a WebLogic Server instance?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans:</strong> The stub removes the instance that is failed from its list when a failure occurs. The stub uses DNS again for finding a running server and obtains a current list of instances when there are no servers left in its list. The list of available server instances in the cluster will get periodical refreshment, which allows taking advantage of new servers. This is because; the servers are added to the cluster.</p>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q10) What is the difference between Weblogic and Websphere?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans:</strong> Though the functionality of these two products is closer, there are minor differences in the standards that support it. These differences are:</p>
<ul>
<li style="text-align: justify;">WebSphere&rsquo;s focus is more on connectivity, integration, and web services whereas WebLogic&rsquo;s focus are more on emerging standards and ease-of-use of J2EE.</li>
<li style="text-align: justify;">WebSphere&rsquo;s performance is better in terms of implementations of J2EE is a little more involved, and supports more integration and transaction management.</li>
<li style="text-align: justify;">WebLogic is supported by the default transaction attribute &ndash; &ldquo;Supports&rdquo;, whereas WebSphere has not default transaction attribute.</li>
<li style="text-align: justify;">WebSphere strictly follows J2EE architecture.</li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q11) What is WebSphere?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans:</strong> WebSphere refers to a brand for IBM software products. It is designed for setting up, operation, and integration of electronic business applications. These applications could perform well in a cross-platform environment. These sets of software are Java-based web technologies.</p>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q12) Why is there no polymorphic-type response from a create () or find () method?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;">The EJB Specification prohibits this behaviour and Weblogic. ejbc compiler checks for this behaviour and prohibits any polymorphic type of response from a create() or find() method.</li>
<li style="text-align: justify;">The reason they create() and find() methods are not polymorphic is similar to the reason constructors are not polymorphic in Java. The derived classes generally do not know or cannot initialize the base class properly.</li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q13) Why did my JDBC code throw a rollback SQL Exception?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans:</strong> JDBC code may throw the following exception:</p>
<ul>
<li style="text-align: justify;">The coordinator has rolled back the transaction. No further JDBC access is allowed within this transaction.</li>
<li style="text-align: justify;">The WebLogic JTS JDBC driver throws this exception when the current JDBC connection transaction rolls back prior to or during the JDBC call. This exception indicates that the transaction in which the JDBC connection was participating was rolled back at some point prior to or during the JDBC call.</li>
<li style="text-align: justify;">The rollback may have happened in an earlier EJB invoke that was part of the transaction, or the rollback may have occurred because the transaction timed out. In either case, the transaction will be rolled back, the connection returned to the pool, and the database resources released. To proceed, the JTS JDBC connection must be closed and reopened in a new transaction.</li>
</ul>
<table style="border-collapse: collapse; width: 100%; height: 56px; background-color: #ecf0f1; border-color: #ced4d9; border-style: solid;" border="1px" cellpadding="5">
<tbody>
<tr>
<td style="width: 98.3496%; text-align: center;"><em>Inclined to build a profession as Oracle WebLogic Developer? Then here is the blog post on, explore <span style="color: #236fa1;"><a style="color: #236fa1;" title="WebLogic Training" href="https://tekslate.com/weblogic-server-administration-training" target="_blank"><strong>Oracle WebLogic Training</strong></a></span></em></td>
</tr>
</tbody>
</table>
<blockquote>
<p style="text-align: left;">&nbsp;</p>
</blockquote>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q14) When deploying a resource adapter (.rar) to WebLogic Server, are its classes placed in the WebLogic classpath?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans:</strong> For instance, I am deploying an EJB and a resource adapter (.rar), the EJB has no dependencies on the .rar because the EJB is writing to the common client interface (CCI). The EJB client application has sends/marshals as parameter classes that are defined in the .rar. For some reason, the EJB's classloader hierarchy cannot find the definition of this .rar-specific class, even though the .rar is deploying successfully. I receive the following error on the EJB client:</p>
<p style="text-align: justify;">java.rmi.UnmarshalException: error unmarshalling arguments; nested</p>
<p style="text-align: justify;">exception</p>
<p style="text-align: justify;">is:</p>
<p style="text-align: justify;">java. lang.ClassNotFoundException:</p>
<p style="text-align: justify;">com. my company.InteractionSpecImpl</p>
<p style="text-align: justify;">When you pass an instance of com. my client company.server.eai.InteractionSpecImpl as an argument to your EJB, the app server needs to de-serialize (unmarshal) the object under the EJB context, and it needs the required class for unmarshalling, inside the ejb-jar(raTester.jar). So, if you include the interactionspecimpl class in your ejb-jar file, then you do not need to include those classes in your server's classpath.</p>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q15) What type of object is returned by ResultSet.getObject()?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans:</strong> WebLogic jDriver for Oracle always returns a Java object that preserves the precision of the data retrieved. WebLogic jDriver for Oracle returns the following from the getObject() method:</p>
<ul>
<li style="text-align: justify;">For columns of types NUMBER(n) and NUMBER(m,n): a Double is returned if the defined precision of the column can be represented by a Double; otherwise, BigDecimal is returned.</li>
<li style="text-align: justify;">For columns of type NUMBER: Because there is no explicit precision, the Java type to return is determined based on the actual value in each row, and this may vary from row to row. An Integer is returned if the value has a zero-valued fractional component and the value can be represented by an integer.</li>
<li style="text-align: justify;">For example, 1.0000 will be an integer. A long is returned for a value such as 123456789123.00000. If a value has a non-zero fractional component, a Double is returned if the precision of the value can be represented by a Double; otherwise, a big decimal is returned.</li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q16) How do I call Oracle stored procedures that take no parameters?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;">Here is what we use that works: CallableStatement cstmt = conn.prepareCall("Begin procName; END;"); cstmt.execute();</li>
<li style="text-align: justify;">where procName is the name of an Oracle-stored procedure. This is standard Oracle SQL syntax that works with any Oracle DBMS. You might also use the following syntax:</li>
<li style="text-align: justify;">CallableStatement cstmt = conn.prepareCall("{call procName};"); cstmt.execute();</li>
<li style="text-align: justify;">This code, which conforms to the Java Extended SQL spec, will work with any DBMS, not just Oracle.</li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q17) State some of the features present in Websphere.</strong></span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;">Supports the Servlet/JSP container functionality which runs on top of HTTP.</li>
<li style="text-align: justify;">Supports HTTP servers such as IBM HTTP Server, MS IIS, and Netscape iPlanet server.</li>
<li style="text-align: justify;">Supports HTML pages, Setvlets, Java Server Pages and XML.</li>
<li style="text-align: justify;">Supports the EJB component model, Workload Management. WLM supports multiple servers within a single administrative domain.</li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q18) What are the applications in Websphere?</strong></span></h3>
<p><strong>Ans:</strong> WebSphere applications use the following kinds of technologies:</p>
<ul>
<li style="text-align: justify;">Java specifications and other open standards for developing applications.</li>
<li style="text-align: justify;">WebSphere programming model extensions to enhance application functionality.</li>
<li style="text-align: justify;">Containers and services in the application server, used by deployed applications, and which sometimes can be extended.</li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q19) What is the IBM WebSphere edge server?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;">WebSphere Edge is a set of web server/application server components that are intended to improve the performance of web-based systems.</li>
<li style="text-align: justify;">It is part of the IBM WebSphere product suite.</li>
<li style="text-align: justify;">Edge Server comprises 4 basic components:</li>
</ul>
<ol>
<li style="text-align: justify;">Network Dispatcher</li>
<li style="text-align: justify;">Caching Proxy</li>
<li style="text-align: justify;">Content Distribution</li>
<li style="text-align: justify;">Application Service at the Edge</li>
</ol>
<ul>
<li style="text-align: justify;">Edge can be configured for high availability with a backup Edge failover server that takes over sessions if the primary Edge server fails.</li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q20) What is extended deployment in WebSphere?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans:</strong> WebSphere Extended Deployment delivers enhanced Qualities of Service with features for optimizing IT resources.</p>
<p style="padding-left: 30px; text-align: justify;">The suite comprises 3 products:</p>
<p style="text-align: justify;"><em><span style="color: #000000;"><strong>WebSphere Virtual Enterprise:</strong></span></em></p>
<p style="padding-left: 20px; text-align: justify;">It increases flexibility and agility to ensure business process integrity, improve service, and application performance, and better manage health.</p>
<p style="padding-left: 20px; text-align: justify;">It provides application infrastructure virtualization capabilities that lower the costs required to create, manage, and run enterprise applications and an SOA environment.</p>
<p style="text-align: justify;"><em><span style="color: #000000;"><strong>WebSphere eXtreme Scale:</strong></span></em></p>
<p style="padding-left: 20px; text-align: justify;">It is an essential IBM software technology for conducting extreme transaction processing.</p>
<p style="padding-left: 20px; text-align: justify;">It allows business applications to process exceptionally large volumes of transactions with extreme efficiency and linear scalability.</p>
<p style="padding-left: 20px; text-align: justify;">It provides transactional integrity and transparent failover to ensure high availability, high reliability, and constant response times.</p>
<p style="padding-left: 20px; text-align: justify;">It operates as an in-memory data grid that dynamically caches, partitions, replicates, and manages application data and business logic across multiple servers.</p>
<p style="text-align: justify;"><em><span style="color: #000000;"><strong>Compute Grid:</strong></span></em></p>
<p style="padding-left: 20px; text-align: justify;">Enables the scheduling, execution, and monitoring of batch-type jobs with enhanced service policy and workload management</p>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q21) What is asymmetric clustering in WebSphere?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;">Asymmetric clustering architecture is opposite to the typical stateless server farm where the entire app is replicated across machines, sometimes using distributed caching products for improving the performance.</li>
<li style="text-align: justify;">In an asymmetric cluster, business logic is split into partitions, where each partition can be the sole accessory of a set of underlying data</li>
<li style="text-align: justify;">This results in each node in the cluster implementing its own local cache resulting in high-performance reading and writing without the need to maintain a distributed cache between cluster nodes.</li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q22) What is WebSphere MQ JMS Provider?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;">IBM WebSphere MQ classes for Java Message Service are a set of Java classes that enables the JMS applications to access WebSphere MQ systems.</li>
<li style="text-align: justify;">Both the point-to-point and publish/subscribe models of JMS are supported.</li>
<li style="text-align: justify;">These Java classes are available as part of the IBM WebSphere MQ client support.</li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q23) Explain the attribute CHANNEL in WebSphere MQ?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;">A channel is a connection that is to establish a link between the sending channel and the receiving channel. A channel has a sender channel at the local queue manager and a receiver channel at the remote queue manager. These two channels consist of the same name and together make one channel.</li>
<li style="text-align: justify;">The CHANNEL attribute is used with WebSphere MQ applications, to specify the channels for receiving and sending messages in a file that defines sender and receiver channels.</li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q24) Explain WebSphere MQ Real-time transport.</strong></span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;">WebSphere MQ Real-time Transport is a lightweight protocol optimized for use with nonpersistent messaging.</li>
<li style="text-align: justify;">It is used by JMS clients and provides high levels of scalability and message throughput.</li>
<li style="text-align: justify;">WebSphere MQ Real-time Transport is ideal for applications where large numbers of messages need to be sent or where messages need to be sent to large numbers of client applications.</li>
<li style="text-align: justify;">The WebSphere MQ Real-time Transport does not provide any facilities for persistent messaging or durable subscriptions.</li>
</ul>
<h3 style="text-align: justify;"><span style="font-size: 18px; color: #e67e23;"><strong>Q25) Explain the concepts and capabilities of ANT.</strong></span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;"><span style="color: #e67e23;"><strong><span style="color: #000000;"><em>Open:</em></span> </strong></span>Ant is an open-source project available under the Apache license. Therefore, its source code can be downloaded and modified. Additionally, Ant uses XML build files which makes its development easy.</li>
<li style="text-align: justify;"><span style="color: #e67e23;"><strong><em><span style="color: #000000;">Cross-Platform:</span></em> </strong></span>The use&nbsp;of XML along with Java makes Ant the perfect solution for developing programs designed to run or be built across a range of different operating systems.</li>
<li style="text-align: justify;"><strong><span style="color: #000000;"><em>Extensible:</em></span>&nbsp;</strong>New tasks are used to extend the capabilities of the build process, while build listeners are used to helping hook into the build process to add extra error-tracking functionality.</li>
<li style="text-align: justify;"><strong><span style="color: #000000;"><em>Integration:</em></span>&nbsp;</strong>As Ant is extensible and open, it can be integrated with any editor or development environment easily.</li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q26) How can I use ANT to run a Java application?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans:</strong> The following is an example to run a Java application using ANT:</p>
<pre style="padding-left: 30px;">&lt;target name=&rdquo;run&rdquo; depends=&rdquo;some.target&rdquo;,some.other.target&rdquo;&gt;
 &lt;java classname=&rdquo;${run.class}&rdquo; fork=&rdquo;yes&rdquo;&gt;
 &lt;classpath&gt;
 &lt;path refrid = &ldquo;classpath&rdquo; /&gt;
 &lt;/classpath&gt;
 &lt;jvmarg line=&rdquo;${debug.jvmargs}&rdquo;/&gt;
 &lt;jvmarg line=&rdquo;${my.jvmargs}&rdquo;/&gt; &lt; BR&gt;
 &lt;jvmargvalue=&rdquo;-dname=${name}&rdquo; style="padding: 0px; margin: 0px; color: rgb(0, 0, 0); font-family: Helvetica, "Open Sans", Arial, sans-serif, Verdana; font-size: 15px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px;"&gt;&lt;jvmarg line=&rdquo;${run.jvmargs}&rdquo;/&gt;
 &lt;arg line=&rdquo;${run.args}&rdquo;/&gt;
 &lt;/java&gt;
 &lt;/target&gt;</pre>
<h3 style="text-align: justify;"><span style="font-size: 18px; color: #e67e23;"><strong>Q27) Explain how to debug my ANT script.</strong></span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;">The echo can be used as the alert () of the JavaScript.</li>
<li style="text-align: justify;">Use project.log("msg") in javascript or custom ant task.</li>
<li style="text-align: justify;">Run ANT with -verbose, or even -debug, to get more information on what it is doing, and where.</li>
</ul>
<h3 style="text-align: justify;"><span style="font-size: 18px; color: #e67e23;"><strong>Q28) What is J2ME?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;">J2ME stands for Java 2 Platform Micro Edition.</li>
<li style="text-align: justify;">It is targeted at small, standalone, or connectible consumers and embedded devices.</li>
<li style="text-align: justify;">This technology consists of both a programming language and a software platform.</li>
<li style="text-align: justify;">It is a highly optimized version of JRE and consists of JVM and a set of APIs, which is suitable for simple runtime environments.</li>
<li style="text-align: justify;">It provides a robust and flexible environment for running applications.</li>
</ul>
<h3 style="text-align: justify;"><span style="font-size: 18px; color: #e67e23;">Q29) What is the CDC?</span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;">CDC stands for Connected Device Configuration.</li>
<li style="text-align: justify;">It is a set of tools for developing applications that run on a range of network-connected consumer and embedded devices that support the Java ME CDC application framework.</li>
<li style="text-align: justify;">It is a JVM that is highly optimized for resource-constrained devices.</li>
<li style="text-align: justify;">It is used for bigger devices, such as set-top boxes and PDAs.</li>
<li style="text-align: justify;">CDC has more memory and more robust network connectivity.</li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q30) What is CDMA?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;">CDMA (Code Division Multiple Access) is a multiplexing technique based on the spread spectrum approach.</li>
<li style="text-align: justify;">This allows several users to share a bandwidth of frequencies.</li>
<li style="text-align: justify;">In this, a special coding scheme is used where each transmitter is assigned a code to allow multiple users to be multiplexed over the same physical channel.</li>
<li style="text-align: justify;">It refers to several protocols which are used in second and third-generation wireless communication.</li>
<li style="text-align: justify;">It employs analog to digital conversion in combination with spread spectrum technology.</li>
</ul>
<h3 style="text-align: justify;"><span style="color: #e67e23; font-size: 18px;"><strong>Q31) What is C-HTML?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;">Compact-HTML (a subset of HTML for small information devices) was created by a Japan-based Access Company and was accepted by the W3CM in 1998.</li>
<li style="text-align: justify;">Devices like cellular phones have several hardware restrictions like small memory, low-power CPUs, small mono-color display screens, and restricted input methods.</li>
<li style="text-align: justify;">cHTML does not support JPEG images, tables, image maps, multiple fonts and styles of fonts, background colours and images, frames, style sheets, and more than two colours, typically black and white.</li>
<li style="text-align: justify;">The basic operations can be done by a combination of four buttons:</li>
</ul>
<ol>
<li style="text-align: justify;">cursor forward</li>
<li style="text-align: justify;">cursor backwards</li>
<li style="text-align: justify;">select</li>
<li style="text-align: justify;">back/stop</li>
</ol>
<h3 style="text-align: justify;"><span style="font-size: 18px; color: #e67e23;"><strong>Q32) What is Telematics?</strong></span></h3>
<p style="text-align: justify;"><strong>Ans: </strong></p>
<ul>
<li style="text-align: justify;">Telematics is a GPS technology that provides location-based service to track the latitude and longitude of a vehicle.</li>
<li style="text-align: justify;">It outputs maps in LED consoles mounted on dashboards.</li>
<li style="text-align: justify;">The server is connected to remote processing centers that provide data, voice, and Internet services.</li>
<li style="text-align: justify;">Telematics is the technology of sending, receiving, and storing information relating to remote objects, such as vehicles, and telecommunication devices.</li>
</ul>1e:T6e7d,<p dir="ltr"><span style="font-size: 14px; color: #000000;">Looking for a job managing Java applications at the enterprise level? Be ready to impress your interviewer by mastering <strong>WebLogic Server</strong>, a widely used Java application server. With its ability to handle large applications, WebLogic has become a go-to choice for many enterprises. To help you prepare for your interview, we've put together an expert guide featuring common <strong>WebLogic Interview Questions</strong> and tips for answering them. Whether you're a seasoned WebLogic pro or new to the field, this guide can help you stand out from the competition and secure your dream job.</span></p>
<p dir="ltr"><span style="font-size: 14px; color: #000000;">In this article, we will cover the following:</span></p>
<ul>
<li dir="ltr"><span style="color: #236fa1;"><a style="color: #236fa1;" href="#weblogic-interview-questions"><strong><span style="font-size: 14px;">WebLogic Interview Questions&nbsp;</span></strong></a></span></li>
<li dir="ltr"><span style="color: #236fa1;"><a style="color: #236fa1;" href="#weblogic-server-interview-questions"><strong><span style="font-size: 14px;">WebLogic Server Interview Questions</span></strong></a></span></li>
<li dir="ltr"><span style="color: #236fa1;"><a style="color: #236fa1;" href="#weblogic-administrator-interview-questions"><strong><span style="font-size: 14px;">WebLogic Administrator Interview Questions</span></strong></a></span></li>
</ul>
<table style="border-collapse: collapse; width: 100%; height: 120px;" border="1px" cellpadding="10">
<tbody>
<tr style="height: 37px; background-color: #ecf0f1; border-color: #ced4d9; border-style: solid;">
<td style="width: 98.3496%;">
<h3 style="text-align: center;"><span style="font-size: 18px;"><strong>Most Frequently Asked WebLogic Interview Questions&nbsp;</strong></span></h3>
</td>
</tr>
<tr style="height: 37px; border-color: #ced4d9; border-style: solid;">
<td style="width: 98.3496%;">
<ul>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#mean-by-weblogic">What do you mean by WebLogic?</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#deployment-desriptors">What are deployment descriptors?</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#domain-in-weblogic">What is a domain in webLogic?</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#ssl-in-weblogic">What is meant by SSL in WebLogic?</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#node-manager">What is a node manager?</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#capabilities-weblogic-server">What are the capabilities of a WebLogic server?</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#deal-failure-weblogic">How to deal with a failure in WebLogic?</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#os-tuning">What is meant by OS tuning?</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#check-port-number">How to check a port number?</a></span></li>
<li><span style="color: #236fa1;"><a style="color: #236fa1;" href="#msi-mode-weblogic">What is Msi mode in WebLogic?</a></span></li>
</ul>
</td>
</tr>
</tbody>
</table>
<h2 dir="ltr"><span style="font-size: 24px; color: #236fa1;"><a id="weblogic-interview-questions"></a>WebLogic Interview Questions</span>&nbsp;</h2>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;"><a id="mean-by-weblogic"></a>Q1) What do you mean by WebLogic?</span></h3>
<p dir="ltr"><strong>Ans:</strong> Weblogic server is basically a software application working on the middle tier, integrating the back-end database, related applications and browser-based clients. A Weblogic server is an instance of a Java process and executes in a JVM. It supports all major JDBC-compliant databases like Microsoft SQL Server, <span style="color: #236fa1;"><a style="color: #236fa1;" title="Oracle DBA Training" href="https://tekslate.com/oracle-dba-training" target="_blank">Oracle</a></span> etc. There can be two types of Weblogic servers:</p>
<ul>
<li>Administration server</li>
<li>Managed server</li>
</ul>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q2) What are the major components of WebLogic?</span></h3>
<p dir="ltr"><em><strong>Ans: </strong>A WebLogic server primarily comprises the following:</em></p>
<ul>
<li>Admin server</li>
<li>Managed server</li>
<li>Domains</li>
<li>Node manager</li>
<li>Weblogic server cluster</li>
</ul>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;"><a id="deployment-desriptors"></a>Q3) What are deployment descriptors?</span></h3>
<p dir="ltr"><strong>Ans: </strong>Deployment descriptors are <span style="color: #236fa1;"><a style="color: #236fa1;" href="https://en.wikipedia.org/wiki/XML" target="_blank" rel="nofollow">XML</a></span> documents that are used in describing the contents of a jar file or a directory. These can be found in most of the modules and applications. The standard and deployment descriptors are defined by the J2EE applications and modules.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q4) What do you mean by admin in WebLogic?</span></h3>
<p dir="ltr"><strong>Ans: </strong>Admin server in WebLogic serves as the central point of control that allows you to gain access to the configuration, monitoring and management of all resources. It is one of the instances of the WebLogic server that allows and maintains the data configuration of a given domain. It is a singleton service and every domain has at least 1 admin server.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q5) What is web.xml?</span></h3>
<p dir="ltr"><strong>Ans: </strong>Web.xml is an XML document that finds its applicability in the listing out of J2EE components and is primarily used for application purposes. It also helps in the configuration of applications in the J2EE module format.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;"><a id="domain-in-weblogic"></a>Q6) What is a domain in webLogic?</span></h3>
<p dir="ltr"><strong>Ans: </strong>A logically related group of WebLogic server resources like Oracle and collectively managed as a single unit is called a domain. These can be used to logically separate organizational divisions, tests, production and development applications. Domains serve as a single administration point.</p>
<table style="border-collapse: collapse; width: 100%; background-color: #ecf0f1; border-color: #ced4d9; border-style: solid; height: 69px;" border="1px" cellpadding="5">
<tbody>
<tr style="height: 69px;">
<td style="width: 98.3496%; text-align: center; height: 69px;"><em>Want to acquire industry skills and gain complete knowledge of WebLogic? Enrol in Instructor-Led live <strong><span style="color: #236fa1;"><a style="color: #236fa1;" title="WebLogic Training" href="https://tekslate.com/weblogic-server-administration-training" target="_blank">WebLogic Training</a></span></strong> to get Job Ready!</em></td>
</tr>
</tbody>
</table>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q7) What is stage deployment?</span></h3>
<p dir="ltr"><strong>Ans: </strong>Stage deployment refers to the process wherein the admin receives a physical copy that has been distributed among other instances.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q8) What is a managed server?</span></h3>
<p dir="ltr"><strong>Ans: </strong>A managed server is another instance of your WebLogic server that runs on the JVM and has a self-managed specific configuration. A managed server is used to deploy the components of Java-like EJB applications, Web applications, JMS applications and other related web services. A domain may or may not have a managed server and the count can go up to N number of managed servers. Until and unless the servers are in a cluster, a managed server always operates independently.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q9) What is the relation between the administration server and managed servers?</span></h3>
<p dir="ltr"><strong>Ans: </strong>The basic point of relation between the admin server and the managed server is that the admin server acts as a master manager for all the other servers including a managed server. To initiate the managed server start-up configuration, the admin server must be running. This is only a one-time process. Every managed server has a local copy of the configuration stored in it. Whenever there is an unavailability of the admin server, the managed server uses its local copy to boot. However, the managed server needs an admin server to synchronize its configurations over subsequent reboots.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q10) What is BSU?</span></h3>
<p dir="ltr"><strong>Ans:&nbsp;</strong> BSU stands for BEA Smart update which is a java based application used to apply patches on Weblogic servers. This utility allows you to work both online and offline.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q11) What is a machine in WebLogic?</span></h3>
<p dir="ltr"><strong>Ans: </strong>Any physical computer that is present or hosts instances in the WebLogic environment is called a machine. It is logically represented in a WebLogic server.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q12) Can a managed server be started if the administration server is not available? How?</span></h3>
<p dir="ltr"><strong>Ans: </strong>In case of the absence of an admin server, the managed server can start up by fetching the configuration files and other related files. However, the managed server is bound to work on the retrieved information and no alterations are possible. Alterations can only be done as and when the admin server is actually available. The managed server can carry out its operation in the independent mode until the availability of the admin server.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;"><a id="ssl-in-weblogic"></a>Q13) What is meant by SSL in WebLogic?</span></h3>
<p dir="ltr"><strong>Ans: </strong>SSL stands for Secure Sockets Layer which is a security protocol enabling secure transfer of data and information in an encrypted format. Standard certificate authorities provide SSL certification to ensure the authentication of the secure transfer of the data at the transport level.&nbsp;</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q14) Are there multiple ways to start and stop WebLogic servers? Name any 3</span></h3>
<p dir="ltr"><strong>Ans: </strong>Yes, there are multiple ways to start and stop a WebLogic server.</p>
<p dir="ltr">Following are the ways to start and stop the admin server:</p>
<ul>
<li>By using the script</li>
<li>By using the &ldquo;Java WebLogic. server&rdquo; command</li>
<li>From the startup option on Windows</li>
</ul>
<p>Following are the ways to start and stop a managed server:</p>
<ul>
<li>By sung scripts</li>
<li>By using the admin console</li>
<li>By using the node manager</li>
</ul>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q15) How are T3 and HTTP protocols different?</span></h3>
<p dir="ltr"><strong>Ans: </strong>The T3 protocol in a WebLogic server is used to establish a connection between the internal and external servers. It is also used in the implementation of RMI in a WebLogic server.</p>
<p dir="ltr">HTTP is a protocol that is used for establishing communication between the web server and the browser. It is authenticated by the World Wide Web Consortium, W3C.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q16) How can you troubleshoot a server hang in WebLogic?</span></h3>
<p dir="ltr"><strong>Ans: </strong>This can be dealt with by using Java WebLogic.Admin PING and see if there is a normal response. Several thread dumps need to be checked with a kill-3 pid on Unix and CTRL Break on Windows. This step needs to be analyzed deeply to narrow down the root cause.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;"><a id="node-manager"></a>Q17) What is a node manager?</span></h3>
<p dir="ltr"><strong>Ans: </strong>A node manager is a controlling program that is used to manage and control the WebLogic server instances. It allows you to control all server instances that may be running on single or multiple physical machines. To be able to communicate with a node manager, every machine must be configured with your node manager.</p>
<table style="border-collapse: collapse; width: 100%; background-color: #ecf0f1; border-color: #ced4d9; border-style: solid; height: 59px;" border="1px" cellpadding="5">
<tbody>
<tr style="height: 59px;">
<td style="width: 98.3496%; text-align: center; height: 59px;"><em>Checkout our Blog on <span style="color: #236fa1;"><a style="color: #236fa1;" title="Weblogic Tutorial" href="https://tekslate.com/tutorialsweblogic-tutorials-how-to" target="_blank"><strong>Weblogic Tutorial</strong></a></span></em></td>
</tr>
</tbody>
</table>
<h2 class="keyword-text _ngcontent-gef-108"><span class="keyword _ngcontent-gef-108" style="font-size: 24px; color: #236fa1;" aria-hidden="false"><a id="weblogic-server-interview-questions"></a>WebLogic Server Interview Questions</span></h2>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q18) What are the different application layers in a WebLogic server?</span></h3>
<p dir="ltr"><strong>Ans:</strong><em><strong> </strong></em>There are three different application layers in a WebLogic server:</p>
<ul>
<li dir="ltr"><em><strong>Presentation layer:</strong></em> it contains server containers and any other web application containers.</li>
<li dir="ltr"><em><strong>Business layer:</strong></em> it contains containers with business logic along with Entity Beans or Session Beans.</li>
<li dir="ltr"><em><strong>Service layer:</strong></em> it contains the services which are helpful in initiating the business logic functionality.</li>
</ul>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q19) What is meant by multicasting in a WebLogic cluster?</span></h3>
<p dir="ltr"><strong>Ans: </strong>Multicasting refers to establishing a peer to peer communication to initiate the process of messaging communications between different IP sockets.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q20) What are the networking protocols deployed in Weblogic servers?</span></h3>
<p dir="ltr"><strong>Ans: </strong>There are 7 different networking protocols deployed in a WebLogic server. These are:</p>
<ul>
<li dir="ltr">SOAP- Simple object access protocol is a messaging protocol used in web service standard</li>
<li dir="ltr">HTTP- it is used in web standards for communication</li>
<li dir="ltr">HTTPS- it is used in the web browser along with SSL</li>
<li dir="ltr">IIOP- it is a secure WebLogic protocol</li>
<li dir="ltr">RMI- Remote Method Invocation allows the establishment of a connection in a disturbed environment.</li>
<li dir="ltr">T3- enables connection establishment between Java applications over several network connections</li>
<li dir="ltr">T3S- A secure WebLogic protocol</li>
</ul>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q21) How can you install a WebLogic server? Are there multiple ways to do so?</span></h3>
<p dir="ltr"><strong>Ans: </strong>A WebLogic Server can be installed in three different modes:</p>
<p dir="ltr"><em><strong>1. Silent mode:</strong></em> uses configuration files, there is no manual intervention during the installation</p>
<p dir="ltr"><em><strong>2. Graphical mode:</strong></em> GUI interaction with the user during installation</p>
<p dir="ltr"><em><strong>3. Console mode</strong></em>: Command-based interactive mode of installation</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q22) What is meant by JVM tuning in a WebLogic server?</span></h3>
<p dir="ltr"><strong>Ans: </strong>JVM tuning refers to the enhancement and improvisation in the performance of a JVM execution engine in the WebLogic server. This is done by changing, adding or removing a few parameters in the WebLogic server like garbage collection or heap size, etc.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;"><a id="capabilities-weblogic-server"></a>Q23) What are the capabilities of a WebLogic server?</span></h3>
<p dir="ltr"><strong>Ans: </strong>The various capabilities of a WebLogic server are:</p>
<ul>
<li dir="ltr">It allows rolling upgrades</li>
<li dir="ltr">It allows the redeployment of the production application</li>
<li dir="ltr">It allows changes in the dynamic configuration</li>
</ul>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q24) Can you change the default JVM in a WebLogic server?</span></h3>
<p dir="ltr"><strong>Ans: </strong>Yes, we can change the default JVM in Weblogic servers. It can be done as follows:</p>
<ul>
<li dir="ltr">Set JAVA_HOME in the start script of the server</li>
<li dir="ltr">Use JRockit javac.exe to change the config.xml of the domain</li>
<li dir="ltr">Remove all Sun JVM switches from the start scripts server</li>
</ul>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q25) How can you set a classpath in a WebLogic server?</span></h3>
<p dir="ltr"><strong>Ans: </strong>A classpath in Windows can be set using the following script WL_HOMEserverbinsetWLSEnv.cmd</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q26) How can you create a pooling within the Tomcat server?</span></h3>
<p dir="ltr"><strong>Ans: </strong>A pooling in the Tomcat server can be created by:</p>
<ul>
<li dir="ltr">Download 3 jar files: commons-dbcp-1.2 jar, commons-pool-1.3.jar and commons-collections-3.1 jar</li>
<li dir="ltr">Make an entry inside the server.sml of the tomcat factory.</li>
</ul>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q27) Is a server crash different from the server hang? How?</span></h3>
<p dir="ltr"><strong>Ans: </strong>Yes, it is different. When a server crash happens, the Java process does not exist whereas in server hang the Java process stops responding.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q28) What causes the server to hang?</span></h3>
<p dir="ltr"><strong>Ans: </strong>A server hang generally happens due to a memory leak, deadlock, longer than anticipated return time in a database query</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q29) What is meant by memory leak?</span></h3>
<p dir="ltr"><strong>Ans: </strong>A memory leak is a condition in which the <span style="font-size: 12pt;">objects</span> are retained in the heap even after they are no longer required.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q30) How can you enable and disable MSI mode in WebLogic?</span></h3>
<p dir="ltr"><strong>Ans: </strong>MSI mode can be enabled or disabled by ensuring that the managed server&rsquo;s root directory has the configuration subdirectory available. The following command can be used: Environment &gt; Servers &gt; Server_Name &gt; Tuning &gt; Advanced &gt; Managed Server Independence Enabled checkbox</p>
<table style="border-collapse: collapse; width: 100%; background-color: #ecf0f1; border-color: #ced4d9; border-style: solid; height: 67px;" border="1px" cellpadding="5">
<tbody>
<tr style="height: 67px;">
<td style="width: 98.3496%; text-align: center; height: 67px;"><em>Checkout Our Blog on</em> <span style="color: #236fa1;"><a style="color: #236fa1;" title="WebLogic Server Installation" href="https://tekslate.com/weblogic-server-installation" target="_blank"><em><strong>WebLogic Server Installation</strong></em></a></span></td>
</tr>
</tbody>
</table>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q31) What is the default port of a WebLogic admin server?</span></h3>
<p dir="ltr"><strong>Ans: </strong>The default port for configuring the WebLogic server is port 7001.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q32) How can you configure a DB connection pool?</span></h3>
<p dir="ltr"><strong>Ans: </strong>DB or JDBC connection pools can be configured when the WebLogic server is started. The application you are running ideally borrows a connection from the existing database pool and returns it back to the pool by closing it.&nbsp;</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q33) What is the main difference between WebLogic and WebSphere?</span></h3>
<p dir="ltr"><strong>Ans: </strong>The basic difference between WebLogic and WebSphere lies in the standards used in their functionality. While a WebLogic server focuses primarily on the ease of use of J2EE and emerging standards governing them, the WebSphere is more focused on connectivity, web services, and integration.</p>
<p dir="ltr">Websphere is better in terms of transaction management and integration and strictly follows&nbsp; J2EE architecture.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;"><a id="deal-failure-weblogic"></a>Q34) How to deal with a failure in WebLogic?</span></h3>
<p dir="ltr"><strong>Ans: </strong>The WebLogic server failure can be dealt with in the following ways:</p>
<ul>
<li dir="ltr">Overload protection</li>
<li dir="ltr">Failover for clustered services</li>
<li dir="ltr">Automatic restart for failed server instances</li>
<li dir="ltr">Server-level migration</li>
<li dir="ltr">Service level migration</li>
<li dir="ltr">Managed server independence (Mis) mode</li>
</ul>
<p class="keyword-text _ngcontent-gef-108">&nbsp;</p>
<h2 class="keyword-text _ngcontent-gef-108"><span class="keyword _ngcontent-gef-108" style="color: #236fa1; font-size: 24px;" aria-hidden="false"><a id="weblogic-administrator-interview-questions"></a>WebLogic Administrator Interview Questions</span></h2>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q35) How can you switch from a development mode to a production mode in WebLogic 10.3?</span></h3>
<p dir="ltr"><strong>Ans: </strong>The switch from development mode to production mode can be done as follows:</p>
<p dir="ltr">Go to the $root_domain/bin folder and edit the setDomainEnv.cmd.</p>
<p dir="ltr">Set PRODUCTION_MODE = false; save and exit to restart in production mode.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q36) What are the features present in the WebSphere?</span></h3>
<p dir="ltr"><strong>Ans: </strong>A WebSphere supports:</p>
<ul>
<li dir="ltr">The functionality of the Servlet/JSP container that deploys HTTP</li>
<li dir="ltr">Various HTTP servers like Netscape iPlant, IBM HTTP etc.</li>
<li dir="ltr">HTML pages, servlets, XML, Java Server pages etc.</li>
<li dir="ltr">Workload management and EJB component model</li>
</ul>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q37) How to call Oracle stored procedures that take no parameters?</span></h3>
<p dir="ltr"><strong>Ans:</strong> The following syntax can be used to call such procedures:</p>
<p dir="ltr">CallableStatement cstmt = conn.prepare all(&ldquo;Begin to proclaim;</p>
<p dir="ltr">END;&rdquo;);</p>
<p dir="ltr">cstmt.execute();</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q38) How can you know about the WebLogic version?</span></h3>
<p dir="ltr"><strong>Ans:</strong> Go to WebLogic console &gt;&gt; left navigation tree &gt;&gt; Environment &gt;&gt; servers &gt;&gt; click of any server &gt;&gt; click monitoring tab &gt;&gt; note the WebLogic version field.</p>
<p dir="ltr"><strong><span style="color: #e67e23; font-size: 18px;"><a id="os-tuning"></a>Q39) What is meant by OS tuning?</span></strong></p>
<p dir="ltr"><strong>Ans: </strong>OS tuning refers to the process of tuning your operating system with a WebLogic server by setting up TCP/IP parameters.&nbsp;</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q40) What are unicast and multicast?</span></h3>
<p dir="ltr"><strong>Ans: </strong>Multicast is essentially a broadcast UDP option that allows sending of packets or announcements over a specific multicast address to a given group listening to the announcement. The announcements are similar to getting broadcast updates on most social media platforms like Twitter.</p>
<p dir="ltr">Unicast is more personalized and refers to one to one option for sending a packet or message to a particular member and not the whole group. It can be compared with personal messaging apps.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;"><a id="check-port-number"></a>Q41) How to check a port number?</span></h3>
<p dir="ltr"><strong>Ans: </strong>The port number of a WebLogic server can be checked by using netstat-na|grep connected</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q42) Is there a limit on the number of WebLogic servers held inside a multi-processor machine?</span></h3>
<p dir="ltr"><strong>Ans: </strong>No, there can be any number of WebLogic servers held inside a multi-processor machine.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q43) What is the function of the boot.properties file in the WebLogic server?</span></h3>
<p dir="ltr"><strong>Ans:</strong> The boot.properties file stores your credentials like user id and password</p>
<p><strong><span style="font-size: 18px; color: #e67e23;">Q44) What are vertical and horizontal clustering?</span></strong></p>
<p dir="ltr"><strong>Ans: </strong>There are 2 ways in which clustering can be done WebLogic server:</p>
<p dir="ltr"><em><strong>1. Vertical clustering:</strong></em> under this type, multiple Java applications are run on a single physical machine.</p>
<p dir="ltr"><em><strong>2. Horizontal clustering:</strong></em> under this type, multiple Java application servers are run over two or more than two physical machines. It accounts for higher reliability.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q45) How does a server know if another server is unavailable?</span></h3>
<p dir="ltr"><strong>Ans: </strong>Every WebLogic server instance in a WebLogic domain sends regular heartbeats via multicast broadcasting to all other servers in the cluster which is indicative of its presence. If three consecutive heartbeats go missing, the other server instances drop the particular server instance whose heartbeat goes missing.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q46) How are notifications made upon the addition of a new server to the cluster?</span></h3>
<p dir="ltr"><strong>Ans: </strong>A broadcast message regarding the addition of a new server instance is sent to all existing users in case there is an addition. A server instance list is also maintained and regularly updated by the cluster-aware stubs.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q47) What is the function of the auto-deployment feature?</span></h3>
<p dir="ltr"><strong>Ans: </strong>The auto-deployment feature is a monitoring utility that checks the application folder in every 3 seconds to look for any potential changes in the existing applications and/or the addition of any new applications. If there is any such change, it auto-deploys these changes in the existing application dynamically. The same can be done by monitoring socket errors.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q48) What is the mode of communication between managed servers?</span></h3>
<p dir="ltr"><strong>Ans: </strong>Managed servers communicate through the T3 protocol.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;">Q49) What is ANT?</span></h3>
<p dir="ltr"><strong>Ans: </strong>ANT is a task that helps you carry out a smooth configuration of other tasks and applications in a developed environment.</p>
<h3 dir="ltr"><span style="font-size: 18px; color: #e67e23;"><a id="msi-mode-weblogic"></a>Q50) What is Msi mode in WebLogic?</span></h3>
<p dir="ltr"><strong>Ans: </strong>MSI stands for Managed Server Independence. Managed servers have the ability to launch and operate even in the absence of the admin server.</p>1f:T4322,<p style="text-align: justify;"><span style="color: #000000;">We are going to discuss about:</span></p>
<ul style="text-align: justify;">
<li style="text-align: justify;"><span style="color: #000000;"><strong>UsagWee of Logs</strong></span></li>
<li style="text-align: justify;"><span style="color: #000000;"><strong>Server Log Files and Domain Log Files</strong></span></li>
<li style="text-align: justify;"><span style="color: #000000;"><strong>Message Formats &amp; Attributes</strong></span></li>
<li style="text-align: justify;"><span style="color: #000000;"><strong>Configuring WebLogic Logging Services</strong></span></li>
<li style="text-align: justify;"><span style="color: #000000;"><strong>Filtering WebLogic Server Log Messages</strong></span></li>
<li style="text-align: justify;"><span style="color: #000000;"><strong>Using the console to Monitor</strong></span></li>
</ul>
<p style="text-align: justify;"><span style="color: #000000;">This chapter describes how you use WebLogic Server logging services to monitor server, subsystem, and application events. It explains how you configure WebLogic Server to write messages to log files and listen for the log messages that WebLogic Server broadcasts. It also describes how to view log messages through the WebLogic Server Administration Console.</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Using Logs</strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;">WebLogic Server subsystems use logging services to provide information about events such as the deployment of new applications or the failure of one or more subsystems. A server instance uses them to communicate its status and respond to specific events. For example, you can use WebLogic logging services to report error conditions or listen for log messages from a specific subsystem.</span></p>
<ul style="text-align: justify;">
<li><span style="color: #000000;"><em>Logs can aid in the discovery of:</em></span>
<ul>
<li><span style="color: #000000;">frequently accessed resources</span></li>
<li><span style="color: #000000;">activity by day and time interval</span></li>
<li><span style="color: #000000;">amount of data sent and received</span></li>
<li><span style="color: #000000;">IP addresses of users accessing the site</span></li>
<li><span style="color: #000000;">number of actual &ldquo;hits&rdquo;</span></li>
<li><span style="color: #000000;">problems servicing requests</span></li>
<li><span style="color: #000000;">performance statistics</span></li>
</ul>
</li>
</ul>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Server Log Files and Domain Log Files</strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;">Each WebLogic Server instance writes all messages from its subsystems and applications to a server log file that is located on the local host computer. By default, the server log file is located in the logs directory below the server instance root directory; for example, DOMAIN_NAME\servers\SERVER_NAME\logs\SERVER_NAME.log, where DOMAIN_NAME is the name of the directory in which you located the domain and SERVER_NAME is the name of the server.</span></p>
<p style="text-align: justify;"><span style="color: #000000;">In addition to writing messages to the server log file, each server instance forwards a subset of its messages to a domain-wide log file. By default, servers forward only messages of severity level NOTICE or higher. While you can modify the set of messages that are forwarded, servers can never forward messages of the DEBUG severity level.</span></p>
<p style="text-align: justify;"><span style="color: #000000;">The domain log file provides a central location from which to view the overall status of the domain. The domain log resides in the Administration Server logs directory. The default name and location for the domain log file is DOMAIN_NAME\servers\ADMIN_SERVER_NAME\logs\DOMAIN_NAME.log,</span></p>
<p style="text-align: justify;"><span style="color: #000000;">Where DOMAIN_NAME is the name of the directory in which you located the domain and ADMIN_SERVER_NAME is the name of the Administration Server.</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Message Formats &amp; Attributes</strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Log Message Format</strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;">When a WebLogic Server instance writes a message to the server log file, the first line of each message begins with #### followed by the message attributes. Each attribute is contained between angle brackets.</span></p>
<p style="text-align: justify;"><span style="color: #000000;">Here is an example of a message in the server log file:</span></p>
<p style="text-align: justify;"><span style="color: #000000;">####&lt;Sept 22, 2004 10:46:51 AM EST&gt; &lt;Notice&gt; &lt;WebLogicServer&gt; &lt;MyComputer&gt;</span></p>
<p style="text-align: justify;"><span style="color: #000000;">&lt;examplesServer&gt; &lt;main&gt; &lt;&lt;WLS Kernel&gt;&gt; &lt;&gt; &lt;null&gt; &lt;1080575211904&gt; &lt;BEA-000360&gt; &lt;Server started in RUNNING mode&gt;</span></p>
<p style="text-align: justify;"><span style="color: #000000;">In this example, the message attributes are: Locale-formatted Timestamp, Severity, Subsystem, Machine Name, Server Name, Thread ID, User ID, Transaction ID, Diagnostic Context ID, Raw Time Value, Message ID, and Message Text. (A subsequent section, &ldquo;Message Attributes,&rdquo; describes each attribute.)</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Format of Output to Standard Out and Standard Error</strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;">When a WebLogic Server instance writes a message to standard out, the output does not include the #### prefix and does not include the Server Name, Machine Name, Thread ID, User ID, Transaction ID, Diagnostic Context ID, and Raw Time Value fields.</span></p>
<p style="text-align: justify;"><span style="color: #000000;">Here is an example of how the message from the previous section would be printed to standard out:</span></p>
<p style="text-align: justify;"><span style="color: #000000;">&lt;Sept 22, 2004 10:51:10 AM EST&gt; &lt;Notice&gt; &lt;WebLogicServer&gt; &lt;BEA-000360&gt; &lt;Server started in RUNNING mode</span></p>
<p style="text-align: justify;"><span style="color: #000000;">In this example, the message attributes are: Locale-formatted Timestamp, Severity, Subsystem, Message ID, and Message Text.</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Message Attributes</strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;">The messages for all WebLogic Server instances contain a consistent set of attributes. In addition, if your application uses WebLogic logging services to generate messages, its messages will contain these attributes.</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2468" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/983-460x283.png" alt="98" width="471" height="289" /></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Message Severity &amp; Messages Forwarded to Domain Log</strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;">The severity attribute of a WebLogic Server log message indicates the potential impact of the event or condition that the message reports.</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2469" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/993-460x289.png" alt="99" width="476" height="298" /></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Message Catalog</strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;">Message catalogs are available in HTML format on e-docs as part of the documentation deliverable. You can search for messages by error number using the search engine.</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2471" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1002-460x212.png" alt="100" width="504" height="232" /></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2472" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1012-460x312.png" alt="101" width="445" height="301" /></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Configuring WebLogic Logging Services</strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><strong>&nbsp;</strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Logging Configuration Tasks: Main Steps</strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;">The following steps summarize how you configure and filter log messages that WebLogic Server generates. Related documentation and later sections in this guide describe these steps in more detail.</span></p>
<ol style="text-align: justify;">
<li><span style="color: #000000;">Use the Administration Console to manage log files and configure the following logging options:</span></li>
<li><span style="color: #000000;">Domain and server log file name and location, rotation pattern, location of archived log files, and number of log files stored.</span></li>
</ol>
<ol style="text-align: justify;">
<li><span style="color: #000000;">Types of messages that the server sends to standard out.</span></li>
</ol>
<ol style="text-align: justify;">
<li><span style="color: #000000;">Which messages a server instance sends to the domain log.</span></li>
</ol>
<ol style="text-align: justify;">
<li><span style="color: #000000;">Log files for HTTP requests.</span></li>
</ol>
<ol style="text-align: justify;">
<li><span style="color: #000000;">Specify the logging implementation (Java Logging or Log4j).</span></li>
</ol>
<ol style="text-align: justify;">
<li><span style="color: #000000;">Specify message destination and configure filtering log messages by severity level or other criteria. See &ldquo;Filter log messages&rdquo; in the Administration Console Online Help.</span></li>
</ol>
<ol style="text-align: justify;" start="2">
<li><span style="color: #000000;">Alternatively, configure log message filtering on the message handler using the WebLogic Scripting Tool.</span></li>
</ol>
<ol style="text-align: justify;" start="3">
<li><span style="color: #000000;">Filter log messages published by the logger using the Java APIs.</span></li>
</ol>
<p style="text-align: justify;"><span style="color: #000000;"><em>Environment -&gt; Servers -&gt; Logging&hellip;</em></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2473" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1022-460x316.png" alt="102" width="462" height="317" /></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Filtering WebLogic Server Log Messages</strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;">WebLogic logging services provide several filtering options that give you the flexibility to determine which messages are written to WebLogic Server log files and standard out, and which are written to the log file and standard out that a client JVM maintains.</span></p>
<ul style="text-align: justify;">
<li><span style="color: #000000;">Log filters provide control over the log messages that get published.</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">You can filter out messages of a certain severity level, from a particular subsystem, or according to specified criteria</span></li>
</ul>
<ul style="text-align: justify;">
<li><span style="color: #000000;">You can create separate filters for the messages that each server instance writes to:</span>
<ul>
<li><span style="color: #000000;">its server log file</span></li>
<li><span style="color: #000000;">standard out</span></li>
<li><span style="color: #000000;">memory buffer</span></li>
<li><span style="color: #000000;">domain-wide log</span></li>
</ul>
</li>
</ul>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Create Log Filters </strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Step 1:</strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;">Domain -&gt; Configuration -&gt; Log Filters and then click on New</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2474" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1032-460x167.png" alt="103" width="508" height="183" /></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Step 2: </strong>Specify the Name of the Filter and click on Finish Button and Click on Activate Changes</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2475" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1042.png" alt="104" width="386" height="313" /></span></p>
<p style="text-align: justify;"><span style="color: #000000;">Step 3: Specify the conditions according to the requirement and then apply save and Activate Changes.</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2476" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1051.png" alt="105" width="450" height="351" /></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Assigning a Log Filter to Server</strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;">Servers -&gt; Select Server -&gt; Logging -&gt; Advanced and then apply the Filter according to the requirement.</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2477" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1061-460x283.png" alt="106" width="435" height="267" /></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Using the Console to Monitor</strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;">The Administration Console offers some monitoring capabilities:</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2478" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1071-460x114.png" alt="107" width="369" height="91" /></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Monitoring Running Servers</strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2479" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1081-460x266.png" alt="108" width="432" height="249" /></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2480" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1091-460x199.png" alt="109" width="440" height="189" /></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2481" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1102-460x178.png" alt="110" width="458" height="177" /></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><strong>Monitoring Individual Servers</strong></span></p>
<p style="text-align: justify;"><span style="color: #000000;">Server Status and Threads Monitoring</span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2483" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1113-460x311.png" alt="111" width="429" height="288" /></span></p>
<p style="text-align: justify;"><span style="color: #000000;"><img class="alignnone wp-image-2484" src="https://newtekslateassets.s3.us-west-2.amazonaws.com/wp-content/uploads/2014/11/1122-460x288.png" alt="112" width="452" height="282" /></span></p>
<p><strong>Check out our Related Courses</strong> <a href="https://tekslate.com/tutorials/weblogic-tutorials-how-to/">Weblogic Tutorials</a> <a href="https://tekslate.com/introduction-clustering-weblogic/">Introduction to Clustering Weblogic</a> <a href="https://tekslate.com/oracle-goldengate-training/">Oracle Goldengate Training In Chicago</a> <a href="https://tekslate.com/weblogic-server-installation/">Oracle Weblogic Server Installation</a></p>
<p style="text-align: justify;">&nbsp;</p>2:["$","$Lb",null,{"data":{"trending":[{"id":901,"blog_category":159,"blog_type":3,"wp_id":1,"excerpt":null,"table_of_content":null,"description":"$c","title":"Trouble Shooting in WebLogic","url_title":"trouble-shooting-weblogic","image_url":"","meta_title":"Trouble Shooting in WebLogic","meta_desc":"In this tutorial you will learn about trouble shooting in weblogic, common weblogic server deadlocks and how to avoid them.","views":0,"rating":4,"author":"1","top_level_cat_id":"21","author_desc":"","course_id":"0","created_at":"2014-11-12T05:47:19.000Z","updated_at":"2020-10-15T18:59:28.000Z","status":1,"video_schema_name":null,"video_schema_upload_date":null,"video_schema_description":null,"faq_schema_q1":null,"faq_schema_a1":null,"faq_schema_q2":null,"faq_schema_a2":null,"faq_schema_q3":null,"faq_schema_a3":null,"like_counter":0},{"id":903,"blog_category":159,"blog_type":3,"wp_id":1,"excerpt":null,"table_of_content":null,"description":"$d","title":"Introduction to Clustering","url_title":"introduction-clustering-weblogic","image_url":"","meta_title":"Introduction to Weblogic Clustering","meta_desc":"In this tutorial you will learn about introduction to WebLogic clustering, benefits of clustering, cluster in networks and cluster communication.","views":498,"rating":4,"author":"1","top_level_cat_id":"21","author_desc":"","course_id":"0","created_at":"2014-11-12T06:53:01.000Z","updated_at":"2020-10-15T18:37:06.000Z","status":1,"video_schema_name":null,"video_schema_upload_date":null,"video_schema_description":null,"faq_schema_q1":null,"faq_schema_a1":null,"faq_schema_q2":null,"faq_schema_a2":null,"faq_schema_q3":null,"faq_schema_a3":null,"like_counter":0},{"id":900,"blog_category":159,"blog_type":3,"wp_id":1,"excerpt":"","table_of_content":"","description":"$e","title":"Performance and Tuning","url_title":"weblogic-performance-tuning","image_url":"","meta_title":"Performance and Tuning in Weblogic","meta_desc":"In this tutorial you will learn about performance and tuning in weblog, and Setting Caching Size for Stateful Session and Entity Beans.","views":2754,"rating":4.2,"author":"1","top_level_cat_id":"21","author_desc":"","course_id":"192","created_at":"2014-11-12T05:41:07.000Z","updated_at":"2020-10-15T18:19:42.000Z","status":1,"video_schema_name":"","video_schema_upload_date":"","video_schema_description":"","faq_schema_q1":"","faq_schema_a1":"","faq_schema_q2":"","faq_schema_a2":"","faq_schema_q3":"","faq_schema_a3":"","like_counter":0},{"id":896,"blog_category":159,"blog_type":3,"wp_id":1,"excerpt":null,"table_of_content":null,"description":"$f","title":"Security","url_title":"weblogic-security","image_url":"","meta_title":"Security in Weblogic","meta_desc":"In this tutorial we will learn about security in weblogic, filtering network connections, connection filter and Consuming WLS Resources.","views":1070,"rating":4,"author":"1","top_level_cat_id":"21","author_desc":"","course_id":"0","created_at":"2014-11-12T05:11:34.000Z","updated_at":"2020-10-15T11:31:18.000Z","status":1,"video_schema_name":null,"video_schema_upload_date":null,"video_schema_description":null,"faq_schema_q1":null,"faq_schema_a1":null,"faq_schema_q2":null,"faq_schema_a2":null,"faq_schema_q3":null,"faq_schema_a3":null,"like_counter":0},{"id":895,"blog_category":159,"blog_type":3,"wp_id":1,"excerpt":null,"table_of_content":null,"description":"$10","title":"Weblogic JMS (Java Message Service)","url_title":"jms-java-message-service-weblogic","image_url":"","meta_title":"Weblogic JMS (Java Message Service)","meta_desc":"In this tutorial you will learn about java messaging service, message-oriented middleware, monitoring JMS in WLS and monitoring destinations.","views":281,"rating":4,"author":"1","top_level_cat_id":"21","author_desc":"","course_id":"0","created_at":"2014-11-11T12:58:16.000Z","updated_at":"2020-10-15T10:19:52.000Z","status":1,"video_schema_name":null,"video_schema_upload_date":null,"video_schema_description":null,"faq_schema_q1":null,"faq_schema_a1":null,"faq_schema_q2":null,"faq_schema_a2":null,"faq_schema_q3":null,"faq_schema_a3":null,"like_counter":0},{"id":893,"blog_category":159,"blog_type":3,"wp_id":1,"excerpt":null,"table_of_content":null,"description":"$11","title":"Work Managers in Weblogic","url_title":"work-managers-weblogic","image_url":"","meta_title":"Work Managers in Weblogic","meta_desc":"In this tutorial you will learn about using Work Managers, Request Classes, and Constraints. Also learn Migrating from Execute Queues to Work Managers.","views":114,"rating":4,"author":"1","top_level_cat_id":"21","author_desc":"","course_id":"0","created_at":"2014-11-11T11:37:23.000Z","updated_at":"2020-10-14T19:01:07.000Z","status":1,"video_schema_name":null,"video_schema_upload_date":null,"video_schema_description":null,"faq_schema_q1":null,"faq_schema_a1":null,"faq_schema_q2":null,"faq_schema_a2":null,"faq_schema_q3":null,"faq_schema_a3":null,"like_counter":0},{"id":887,"blog_category":159,"blog_type":3,"wp_id":1,"excerpt":"","table_of_content":"","description":"$12","title":"Weblogic Node Manager Configuration","url_title":"weblogic-node-manager-configuration","image_url":"","meta_title":"Weblogic Node Manager Configuration","meta_desc":"This tutorial discusses on weblogic node manager configuration and configuring node manager on multiple machines in weblogic","views":2716,"rating":4.4,"author":"1","top_level_cat_id":"21","author_desc":"","course_id":"192","created_at":"2014-11-11T08:50:40.000Z","updated_at":"2020-10-14T18:19:33.000Z","status":1,"video_schema_name":"","video_schema_upload_date":"","video_schema_description":"","faq_schema_q1":"","faq_schema_a1":"","faq_schema_q2":"","faq_schema_a2":"","faq_schema_q3":"","faq_schema_a3":"","like_counter":0},{"id":886,"blog_category":159,"blog_type":3,"wp_id":1,"excerpt":null,"table_of_content":null,"description":"$13","title":"Weblogic Node Manager Overview","url_title":"node-manager-overview-weblogic","image_url":"","meta_title":"Weblogic Node Manager Overview","meta_desc":"In this tutorial, you will learn about the Weblogic node manager overview and also discusses how the node manager restarts an administration server.","views":585,"rating":4,"author":"1","top_level_cat_id":"21","author_desc":"","course_id":"0","created_at":"2014-11-11T07:33:19.000Z","updated_at":"2020-10-14T18:03:39.000Z","status":1,"video_schema_name":null,"video_schema_upload_date":null,"video_schema_description":null,"faq_schema_q1":null,"faq_schema_a1":null,"faq_schema_q2":null,"faq_schema_a2":null,"faq_schema_q3":null,"faq_schema_a3":null,"like_counter":1},{"id":879,"blog_category":159,"blog_type":3,"wp_id":1,"excerpt":null,"table_of_content":null,"description":"$14","title":"Configuring a WebLogic Server Environment","url_title":"configuring-weblogic-server-environment","image_url":"","meta_title":"Weblogic Server Environment","meta_desc":"In this tutorial, we will learn how to configure a webserver environment clearly explained step-by-step...Tekslate.","views":0,"rating":4,"author":"1","top_level_cat_id":"21","author_desc":"","course_id":"0","created_at":"2014-11-11T05:46:22.000Z","updated_at":"2020-10-14T17:38:31.000Z","status":1,"video_schema_name":null,"video_schema_upload_date":null,"video_schema_description":null,"faq_schema_q1":null,"faq_schema_a1":null,"faq_schema_q2":null,"faq_schema_a2":null,"faq_schema_q3":null,"faq_schema_a3":null,"like_counter":0},{"id":11,"blog_category":159,"blog_type":1,"wp_id":1,"excerpt":"","table_of_content":"$15","description":"$16","title":"WebLogic Tutorial","url_title":"tutorialsweblogic-tutorials-how-to","image_url":"","meta_title":"WebLogic Tutorial for Beginners | What is the WebLogic Server?","meta_desc":"In this WebLogic Tutorial, you will learn about what is WebLogic Server ✔️ Server Versions ✔️ Application Server ✔️ Web Server ✔️ and Important terms.","views":1438,"rating":4.7,"author":"1","top_level_cat_id":"21","author_desc":"","course_id":"192","created_at":"2015-03-04T21:23:07.000Z","updated_at":"2020-10-14T17:04:58.000Z","status":1,"video_schema_name":"","video_schema_upload_date":"","video_schema_description":"","faq_schema_q1":"What is WebLogic 12c?","faq_schema_a1":"Oracle WebLogic Server 12c R2 is the industry's best application server for building and deploying enterprise Java EE applications with support for new features for lowering the cost of operations, improving performance, enhancing scalability, and supporting the Oracle Applications portfolio.","faq_schema_q2":"What is The Use of Domain in WebLogic?","faq_schema_a2":"A WebLogic Domain is a logically related group of WebLogic Server instances (Admin + managed Servers)that you manage from a single set of configuration artefacts. A WebLogic Domain contains exactly one Administration Server and zero or more than zero managed Servers.","faq_schema_q3":"What is The Use of the WebLogic Server?","faq_schema_a3":"WebLogic server is based on Java 2 Platform, Enterprise Edition (J2EE), the standard platform used to create Java-based multi-tier enterprise applications. J2EE platform technologies were developed through the efforts of BEA Systems and other vendors in collaboration with the main developer, Sun Microsystems.","like_counter":1},{"id":894,"blog_category":159,"blog_type":3,"wp_id":1,"excerpt":null,"table_of_content":null,"description":"$17","title":"Weblogic JDBC","url_title":"jdbc-weblogic","image_url":"","meta_title":"weblogic jdbc overview","meta_desc":"In this tutorial you will learn about a brief overview, architecture, Modular Configuration and Deployment in jdbc environment.","views":739,"rating":4,"author":"1","top_level_cat_id":"21","author_desc":"","course_id":"0","created_at":"2014-11-11T12:28:04.000Z","updated_at":"2020-10-09T22:17:47.000Z","status":1,"video_schema_name":null,"video_schema_upload_date":null,"video_schema_description":null,"faq_schema_q1":null,"faq_schema_a1":null,"faq_schema_q2":null,"faq_schema_a2":null,"faq_schema_q3":null,"faq_schema_a3":null,"like_counter":0},{"id":878,"blog_category":159,"blog_type":3,"wp_id":1,"excerpt":"","table_of_content":"$18","description":"$19","title":"WebLogic Server Installation","url_title":"weblogic-server-installation","image_url":"","meta_title":"WebLogic Server Installation","meta_desc":"In this Blog, you will learn about WebLogic Server Installation Modes ✔️ Prerequisites✔️ Installation Programs on Windows and Unix ✔️ and Server Dependencies.","views":1841,"rating":4.3,"author":"1","top_level_cat_id":"21","author_desc":"","course_id":"192","created_at":"2014-11-11T05:24:17.000Z","updated_at":"2020-10-08T13:34:52.000Z","status":1,"video_schema_name":"","video_schema_upload_date":"","video_schema_description":"","faq_schema_q1":"","faq_schema_a1":"","faq_schema_q2":"","faq_schema_a2":"","faq_schema_q3":"","faq_schema_a3":"","like_counter":0},{"id":875,"blog_category":159,"blog_type":3,"wp_id":1,"excerpt":null,"table_of_content":null,"description":"$1a","title":"Overview of Weblogic Application Server","url_title":"overview-weblogic-application-server","image_url":"","meta_title":"Weblogic Server | What is Weblogic Application Server","meta_desc":"Weblogic Server allows you to quickly develop and deploy reliable, secure, scalable and manageable applications which helps business logic and presentation.","views":0,"rating":4,"author":"1","top_level_cat_id":"21","author_desc":"","course_id":"0","created_at":"2014-11-11T04:40:54.000Z","updated_at":"2020-10-08T12:39:14.000Z","status":1,"video_schema_name":null,"video_schema_upload_date":null,"video_schema_description":null,"faq_schema_q1":null,"faq_schema_a1":null,"faq_schema_q2":null,"faq_schema_a2":null,"faq_schema_q3":null,"faq_schema_a3":null,"like_counter":1},{"id":760,"blog_category":159,"blog_type":3,"wp_id":1,"excerpt":null,"table_of_content":null,"description":"$1b","title":"Session replication in Weblogic Cluster","url_title":"session-replication-in-weblogic-cluster","image_url":"","meta_title":"Session Replication in Weblogic Cluster","meta_desc":"Here, we discuss the session replication in the Weblogic cluster and are explained in detail...Tekslate.","views":0,"rating":4,"author":"1","top_level_cat_id":"21","author_desc":"","course_id":"0","created_at":"2014-11-03T22:10:34.000Z","updated_at":"2020-10-08T12:16:43.000Z","status":1,"video_schema_name":null,"video_schema_upload_date":null,"video_schema_description":null,"faq_schema_q1":null,"faq_schema_a1":null,"faq_schema_q2":null,"faq_schema_a2":null,"faq_schema_q3":null,"faq_schema_a3":null,"like_counter":0},{"id":468,"blog_category":159,"blog_type":2,"wp_id":1,"excerpt":"","table_of_content":"<ul>\n<li><span style=\"color: #000000;\"><a style=\"color: #000000;\" href=\"#oracle\">Oracle WebLogic Interview Questions and Answers</a></span></li>\n<li><span style=\"color: #000000;\"><a style=\"color: #000000;\" href=\"#experienced\">WebLogic Interview Questions for Experienced</a></span></li>\n</ul>","description":"$1c","title":"WebLogic Interview Questions and Answers","url_title":"interview-questions-on-weblogic","image_url":"","meta_title":"WebLogic Real Time Interview Questions and Answers (2023)","meta_desc":"Prepare for the Best WebLogic Interview Questions and Answers ➔ Real-time Case Study Questions✔️ Curated by Experts✔️ FAQs✔️ Interview Tips.","views":2434,"rating":4.4,"author":"1","top_level_cat_id":"21","author_desc":"","course_id":"192","created_at":"2017-03-07T12:22:00.000Z","updated_at":"2020-10-06T13:02:33.000Z","status":1,"video_schema_name":"","video_schema_upload_date":"","video_schema_description":"","faq_schema_q1":"How do you troubleshoot Server Hang?","faq_schema_a1":"We can use Java WebLogic. Admin PING to check if we get a normal response. We need to take multiple thread dumps with kill -3 paid on Unix and CTLR Break on Windows. Analyze the thread dump to find the root cause.","faq_schema_q2":"When does High CPU Usage occur?","faq_schema_a2":"It occurs when one process or one thread utilizes an unexpectedly high proportion of CPU.","faq_schema_q3":"How does Cluster Communication Happen?","faq_schema_a3":"Members of the Cluster communicate over the Cluster Multicast IP and Port by sending periodic heartbeat messages.","like_counter":1},{"id":368,"blog_category":159,"blog_type":2,"wp_id":1,"excerpt":"","table_of_content":"","description":"$1d","title":"Oracle WebLogic Interview Questions","url_title":"interview-questions-on-oracle-weblogic","image_url":"","meta_title":"TOP 50 Oracle WebLogic Interview Questions [UPDATED] !!!","meta_desc":"Looking for Oracle WebLogic Interview Questions with Answers? Here we have compiled set of questions from the students who have attended interviews in Fortune 500 companies","views":0,"rating":4,"author":"1","top_level_cat_id":"21","author_desc":"","course_id":"192","created_at":"2016-11-01T06:25:00.000Z","updated_at":"2020-10-06T12:52:42.000Z","status":1,"video_schema_name":"","video_schema_upload_date":"","video_schema_description":"","faq_schema_q1":"","faq_schema_a1":"","faq_schema_q2":"","faq_schema_a2":"","faq_schema_q3":"","faq_schema_a3":"","like_counter":0},{"id":166,"blog_category":159,"blog_type":2,"wp_id":1,"excerpt":"","table_of_content":"<ul>\n<li dir=\"ltr\"><span style=\"color: #000000;\"><a style=\"color: #000000;\" href=\"#weblogic-interview-questions\"><span style=\"font-size: 14px;\">WebLogic Interview Questions&nbsp;</span></a></span></li>\n<li dir=\"ltr\"><span style=\"color: #000000;\"><a style=\"color: #000000;\" href=\"#weblogic-server-interview-questions\"><span style=\"font-size: 14px;\">WebLogic Server Interview Questions</span></a></span></li>\n<li dir=\"ltr\"><span style=\"color: #000000;\"><a style=\"color: #000000;\" href=\"#weblogic-administrator-interview-questions\"><span style=\"font-size: 14px;\">WebLogic Administrator Interview Questions</span></a></span></li>\n</ul>","description":"$1e","title":"WebLogic Interview Questions","url_title":"weblogic-interview-questions-and-answers","image_url":"","meta_title":"TOP 50+ WebLogic Interview Questions and Answers (2023)","meta_desc":"Looking for WebLogic Interview Questions and Answers ➔ Real-time Case Study Questions✔️ Curated by Experts✔️ FAQs✔️ Interview Tips.","views":21738,"rating":4.6,"author":"1","top_level_cat_id":"21","author_desc":"","course_id":"192","created_at":"2016-02-16T12:31:22.000Z","updated_at":"2020-06-09T00:00:00.000Z","status":1,"video_schema_name":"","video_schema_upload_date":"","video_schema_description":"","faq_schema_q1":"What do you mean by admin in WebLogic?","faq_schema_a1":"Admin server in WebLogic serves as the central point of control that allows you to gain access to the configuration, monitoring and management of all resources. It is one of the instances of the WebLogic server that allows and maintains the data configuration of a given domain. It is a singleton service and every domain has at least 1 admin server.","faq_schema_q2":"What is a machine in WebLogic?","faq_schema_a2":"Any physical computer that is present or hosts instances in the WebLogic environment is called a machine. It is logically represented in a WebLogic server.","faq_schema_q3":"How can you set a classpath in a WebLogic server?","faq_schema_a3":"A classpath in Windows can be set using the following script WL_HOMEserverbinsetWLSEnv.cmd","like_counter":3},{"id":889,"blog_category":159,"blog_type":3,"wp_id":1,"excerpt":null,"table_of_content":null,"description":"$1f","title":"Logging and Filtering","url_title":"weblogic-logging-filtering","image_url":"","meta_title":"Logging and Filtering in Weblogic","meta_desc":"In this tutorial you will learn logging and filtering in weblogic. you will also learn monitoring individual servers and assigning a Log Filter to server.","views":438,"rating":4,"author":"1","top_level_cat_id":"21","author_desc":"","course_id":"0","created_at":"2014-11-11T09:31:59.000Z","updated_at":"2018-10-26T11:17:07.000Z","status":1,"video_schema_name":null,"video_schema_upload_date":null,"video_schema_description":null,"faq_schema_q1":null,"faq_schema_a1":null,"faq_schema_q2":null,"faq_schema_a2":null,"faq_schema_q3":null,"faq_schema_a3":null,"like_counter":0}],"type":"blog-cat","categories":[]},"urlName":"weblogic"}]
a:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","1",{"charSet":"utf-8"}],["$","title","2",{"children":"weblogic"}],["$","meta","3",{"name":"description","content":"TekSlate provides all the essential resources to help you become a skilled salesforce professional. Here is the list of informative resources that include tutorials, interview questions, and other technical blogs to make it easy for you to master weblogic."}],["$","meta","4",{"name":"application-name","content":"tekslatetutor"}],["$","meta","5",{"name":"generator","content":"tekslatetutor"}],["$","link","6",{"rel":"canonical","href":"https://tekslate.com/weblogic"}],["$","meta","7",{"property":"og:title","content":"weblogic"}],["$","meta","8",{"property":"og:description","content":"TekSlate provides all the essential resources to help you become a skilled salesforce professional. Here is the list of informative resources that include tutorials, interview questions, and other technical blogs to make it easy for you to master weblogic."}],["$","meta","9",{"property":"og:url","content":"https://tekslate.com/weblogic"}],["$","meta","10",{"property":"og:site_name","content":"tekslatetutor"}],["$","meta","11",{"property":"og:locale","content":"en_US"}],["$","meta","12",{"property":"og:image","content":"https://tekslateassets.s3.amazonaws.com/images/TekSlate_New+Colour.svg"}],["$","meta","13",{"property":"og:image:width","content":"1200"}],["$","meta","14",{"property":"og:image:height","content":"628"}],["$","meta","15",{"property":"og:type","content":"website"}],["$","meta","16",{"name":"twitter:card","content":"summary"}],["$","meta","17",{"name":"twitter:creator","content":"@tekslatetutor"}],["$","meta","18",{"name":"twitter:title","content":"weblogic"}],["$","meta","19",{"name":"twitter:description","content":"TekSlate provides all the essential resources to help you become a skilled salesforce professional. Here is the list of informative resources that include tutorials, interview questions, and other technical blogs to make it easy for you to master weblogic."}],["$","meta","20",{"name":"twitter:image","content":"https://tekslateassets.s3.amazonaws.com/images/TekSlate_New+Colour.svg"}],["$","link","21",{"rel":"icon","href":"https://tekslateassets.s3.amazonaws.com/images/favicon.svg"}]]
1:null
