* <ul>
* <li>
* Get a session attribute hello from session with ref <em>${sessionid.0}</em> form
- * app <em>Catalina:type=Manager,path=/ClusterTest,host=localhost</em>
+ * app <em>Catalina:type=Manager,context=/ClusterTest,host=localhost</em>
* <pre>
* <jmx:invoke
- * name="Catalina:type=Manager,path=/ClusterTest,host=localhost"
+ * name="Catalina:type=Manager,context=/ClusterTest,host=localhost"
* operation="getSessionAttribute"
* resultproperty="hello">
* <arg value="${sessionid.0}"/>
* host="127.0.0.1"
* port="9014"
* ref=""
- * name="Catalina:type=Manager,path="/ClusterTest",host=localhost"
+ * name="Catalina:type=Manager,context="/ClusterTest",host=localhost"
* attribute="maxActiveSessions"
* value="100"
* type="int"
<tr>
<td>DeltaManager</td>
<td>This manager control the sessions and handle session replication </td>
- <td><code>type=Manager,path=${APP.CONTEXT.PATH}, host=${HOST}</code></td>
- <td><code>type=Manager,path=${APP.CONTEXT.PATH}, host=${HOST}</code></td>
+ <td><code>type=Manager,context=${APP.CONTEXT.PATH}, host=${HOST}</code></td>
+ <td><code>type=Manager,context=${APP.CONTEXT.PATH}, host=${HOST}</code></td>
</tr>
<tr>
<td>JvmRouteBinderValve</td>
<td>This is a cluster fallback valve to change the Session ID to the current tomcat jvmroute.</td>
<td><code>type=Valve,name=JvmRouteBinderValve,
- path=${APP.CONTEXT.PATH}</code></td>
+ context=${APP.CONTEXT.PATH}</code></td>
<td><code>type=Valve,name=JvmRouteBinderValve,host=${HOST},
- path=${APP.CONTEXT.PATH}</code></td>
+ context=${APP.CONTEXT.PATH}</code></td>
</tr>
</table>
<td>Server / Service / Engine / Host / Context</td>
<td align="center">1..n</td>
<td align="center"><code>path</code></td>
- <td><code>type=${CONTEXT}, path=${path}, host=${host.name},
+ <td><code>type=${CONTEXT}, context=${name}, host=${host.name},
service=${service.name}</code></td>
</tr>
<td>Server / Service / Engine / Host / Context / InstanceListener</td>
<td align="center">0..n</td>
<td align="center">(none)</td>
- <td><code>type=${INSTANCE-LISTENER}, sequence=${###}, path=${context.path},
- host=${host.name}, service=${service.name}</code></td>
+ <td><code>type=${INSTANCE-LISTENER}, sequence=${###},
+ context=${context.name}, host=${host.name},
+ service=${service.name}</code></td>
</tr>
<tr>
<td>Server / Service / Engine / Host / Context / Listener</td>
<td align="center">0..n</td>
<td align="center">(none)</td>
- <td><code>type=${LISTENER}, sequence=${###}, path=${context.path},
+ <td><code>type=${LISTENER}, sequence=${###}, context=${context.name},
host=${host.name}, service=${service.name}</code></td>
</tr>
<td>Server / Service / Engine / Host / Context / Loader</td>
<td align="center">0..1</td>
<td align="center">(none)</td>
- <td><code>type=${LOADER}, path=${context.path}, host=${host.name},
+ <td><code>type=${LOADER}, context=${context.name}, host=${host.name},
service=${service.name}</code></td>
</tr>
<td>Server / Service / Engine / Host / Context / Manager</td>
<td align="center">0..1</td>
<td align="center">(none)</td>
- <td><code>type=${MANAGER}, path=${context.path}, host=${host.name},
+ <td><code>type=${MANAGER}, context=${context.name}, host=${host.name},
service=${service.name}</code></td>
</tr>
<td>Server / Service / Engine / Host / Context / Realm</td>
<td align="center">0..1</td>
<td align="center">(none)</td>
- <td><code>type=${REALM}, path=${context.path}, host=${host.name},
+ <td><code>type=${REALM}, context=${context.name}, host=${host.name},
service=${service.name}</code></td>
</tr>
<td>Server / Service / Engine / Host / Context / Resources</td>
<td align="center">0..1</td>
<td align="center">(none)</td>
- <td><code>type=${RESOURCES}, path=${context.path}, host=${host.name},
+ <td><code>type=${RESOURCES}, context=${context.name}, host=${host.name},
service=${service.name}</code></td>
</tr>
<td>Server / Service / Engine / Host / Context / Valve</td>
<td align="center">0..n</td>
<td align="center">(none)</td>
- <td><code>type=${VALVE}, sequence=${###}, path=${context.path},
+ <td><code>type=${VALVE}, sequence=${###}, context=${context.name},
host=${host.name}, service=${service.name}</code></td>
</tr>
<td>Server / Service / Engine / Host / Context / WrapperLifecycle</td>
<td align="center">0..n</td>
<td align="center">(none)</td>
- <td><code>type=${WRAPPER-LIFECYCLE}, sequence=${###}, path=${context.path},
- host=${host.name}, service=${service.name}</code></td>
+ <td><code>type=${WRAPPER-LIFECYCLE}, sequence=${###},
+ context=${context.name}, host=${host.name},
+ service=${service.name}</code></td>
</tr>
<tr>
<td>Server / Service / Engine / Host / Context / WrapperListener</td>
<td align="center">0..n</td>
<td align="center">(none)</td>
- <td><code>type=${WRAPPER-LISTENER}, sequence=${###}, path=${context.path},
- host=${host.name}, service=${service.name}</code></td>
+ <td><code>type=${WRAPPER-LISTENER}, sequence=${###},
+ context=${context.name}, host=${host.name},
+ service=${service.name}</code></td>
</tr>
<tr>
property <em>clustertest.maxActiveSessions.orginal</em>
-->
<jmx:get
- name="Catalina:type=Manager,path=/ClusterTest,host=localhost"
+ name="Catalina:type=Manager,context=/ClusterTest,host=localhost"
attribute="maxActiveSessions"
resultproperty="clustertest.maxActiveSessions.orginal"
echo="true"
<!-- set maxActiveSession to 100
-->
<jmx:set
- name="Catalina:type=Manager,path=/ClusterTest,host=localhost"
+ name="Catalina:type=Manager,context=/ClusterTest,host=localhost"
attribute="maxActiveSessions"
value="100"
type="int"
access all session ids directly with Ant property sessions.[0..n].
-->
<jmx:invoke
- name="Catalina:type=Manager,path=/ClusterTest,host=localhost"
+ name="Catalina:type=Manager,context=/ClusterTest,host=localhost"
operation="listSessionIds"
resultproperty="sessions"
echo="false"
<!-- Access session attribute <em>Hello</em> from first session.
-->
<jmx:invoke
- name="Catalina:type=Manager,path=/ClusterTest,host=localhost"
+ name="Catalina:type=Manager,context=/ClusterTest,host=localhost"
operation="getSessionAttribute"
resultproperty="Hello"
echo="false"
Example to get remote MBean attribute from default JMX connection <br/>
<source>
<jmx:get
- name="Catalina:type=Manager,path=/servlets-examples,host=localhost"
+ name="Catalina:type=Manager,context=/servlets-examples,host=localhost"
attribute="maxActiveSessions"
resultproperty="servlets-examples.maxActiveSessions"
/>
Example to set remote MBean attribute value<br/>
<source>
<jmx:set
- name="Catalina:type=Manager,path=/servlets-examples,host=localhost"
+ name="Catalina:type=Manager,context=/servlets-examples,host=localhost"
attribute="maxActiveSessions"
value="500"
type="int"
stop an application <br/>
<source>
<jmx:invoke
- name="Catalina:type=Manager,path=/servlets-examples,host=localhost"
+ name="Catalina:type=Manager,context=/servlets-examples,host=localhost"
operation="stop"/>
</source>
Now you can find the sessionid at <em>${sessions.[0..N}</em> properties and access the count
Example to get all sessionids <br/>
<source>
<jmx:invoke
- name="Catalina:type=Manager,path=/servlets-examples,host=localhost"
+ name="Catalina:type=Manager,context=/servlets-examples,host=localhost"
operation="listSessionIds"
resultproperty="sessions"
delimiter=" "
Example to get remote MBean session attribute from session ${sessionid.0}<br/>
<source>
<jmx:invoke
- name="Catalina:type=Manager,path=/ClusterTest,host=localhost"
+ name="Catalina:type=Manager,context=/ClusterTest,host=localhost"
operation="getSessionAttribute"
resultproperty="hello">
<arg value="${sessionid.0}"/>
Example to get the Manager from <em>servlet-examples</em> application an bind all MBean properties<br/>
<source>
<jmx:query
- name="Catalina:type=Manager,path=/servlet-examples,host=localhost*"
+ name="Catalina:type=Manager,context=/servlet-examples,host=localhost*"
attributebinding="true"
resultproperty="manager.servletExamples" />
</source>
<td>classLoader</td>
<td>ObjectName of server or web application classloader <br/>
( <em>Catalina:type=ServerClassLoader,name=[server,common,shared]</em> or<br/>
- <em>Catalina:type=WebappClassLoader,path=/myapps,host=localhost</em>)
+ <em>Catalina:type=WebappClassLoader,context=/myapps,host=localhost</em>)
</td>
<td></td>
</tr>