I have expanded the ProxyManagedDeploymentFactory to support multiple mbeans under a
single MBeanDeployment so that a single ManagedDeployment results. Now all three of the
war related mbean types are found under a single ManagedDeployment, for example, the
jmx-console has the following ProfileServiceDebugServlet view:
| ManagedDeployment: //localhost/jmx-console
| +++ ManagedComponent(name=jboss.web:host=localhost,path=/jmx-console,type=Manager,
type=(ComponentType{type=MBean, subtype=WebApplicationManager}),
compName=jboss.web:host=localhost,path=/jmx-console,type=Manager, attachment: null
| ++++++ properties: [sessionIdLength, maxInactiveInterval, expiredSessions, entropy,
sessionCounter, maxActiveSessions, className, processingTime, algorithm,
processExpiresFrequency, rejectedSessions, sessionAverageAliveTime, randomFile,
modelerType, duplicates, pathname, sessionMaxAliveTime, activeSessions, name, maxActive,
distributable]
| +++
ManagedComponent(name=jboss.web:J2EEApplication=none,J2EEServer=none,j2eeType=WebModule,name=//localhost/jmx-console,
type=(ComponentType{type=MBean, subtype=WebApplication}),
compName=jboss.web:J2EEApplication=none,J2EEServer=none,j2eeType=WebModule,name=//localhost/jmx-console,
attachment: null
| ++++++ properties: [privileged, compilerClasspath, crossContext, swallowOutput,
antiResourceLocking, caseSensitive, cookies, workDir, loader, unloadDelay, path,
managedResource, objectName, servlets, tldScanTime, realm, namingContextListener,
configFile, modelerType, saveConfig, stateManageable, state, eventProvider, cacheTTL,
cachingAllowed, cacheObjectMaxSize, startupTime, statisticsProvider, javaVMs, manager,
staticResources, override, docBase, defaultContextXml, server, startTime, defaultWebXml,
deploymentDescriptor, mappingObject, parentClassLoader, processingTime, useNaming,
delegate, antiJARLocking, valveObjectNames, cacheMaxSize, logger, engineName,
allowLinking, children, reloadable, welcomeFiles]
| +++
ManagedComponent(name=jboss.web:J2EEApplication=none,J2EEServer=none,WebModule=//localhost/jmx-console,j2eeType=Servlet,name=DisplayOpResult,
type=(ComponentType{type=MBean, subtype=Servlet}),
compName=jboss.web:J2EEApplication=none,J2EEServer=none,WebModule=//localhost/jmx-console,j2eeType=Servlet,name=DisplayOpResult,
attachment: null
| ++++++ properties: [objectName, minTime, statisticsProvider, loadTime, classLoadTime,
processingTime, requestCount, modelerType, errorCount, stateManageable, eventProvider,
engineName, maxTime]
| +++
ManagedComponent(name=jboss.web:J2EEApplication=none,J2EEServer=none,WebModule=//localhost/jmx-console,j2eeType=Servlet,name=jsp,
type=(ComponentType{type=MBean, subtype=Servlet}),
compName=jboss.web:J2EEApplication=none,J2EEServer=none,WebModule=//localhost/jmx-console,j2eeType=Servlet,name=jsp,
attachment: null
| ++++++ properties: [objectName, minTime, statisticsProvider, loadTime, classLoadTime,
processingTime, requestCount, modelerType, errorCount, stateManageable, eventProvider,
engineName, maxTime]
| +++
ManagedComponent(name=jboss.web:J2EEApplication=none,J2EEServer=none,WebModule=//localhost/jmx-console,j2eeType=Servlet,name=ProfileServiceDebugServlet,
type=(ComponentType{type=MBean, subtype=Servlet}),
compName=jboss.web:J2EEApplication=none,J2EEServer=none,WebModule=//localhost/jmx-console,j2eeType=Servlet,name=ProfileServiceDebugServlet,
attachment: null
| ++++++ properties: [objectName, minTime, statisticsProvider, loadTime, classLoadTime,
processingTime, requestCount, modelerType, errorCount, stateManageable, eventProvider,
engineName, maxTime]
| +++
ManagedComponent(name=jboss.web:J2EEApplication=none,J2EEServer=none,WebModule=//localhost/jmx-console,j2eeType=Servlet,name=default,
type=(ComponentType{type=MBean, subtype=Servlet}),
compName=jboss.web:J2EEApplication=none,J2EEServer=none,WebModule=//localhost/jmx-console,j2eeType=Servlet,name=default,
attachment: null
| ++++++ properties: [objectName, minTime, statisticsProvider, loadTime, classLoadTime,
processingTime, requestCount, modelerType, errorCount, stateManageable, eventProvider,
engineName, maxTime]
| +++
ManagedComponent(name=jboss.web:J2EEApplication=none,J2EEServer=none,WebModule=//localhost/jmx-console,j2eeType=Servlet,name=DisplayMBeans,
type=(ComponentType{type=MBean, subtype=Servlet}),
compName=jboss.web:J2EEApplication=none,J2EEServer=none,WebModule=//localhost/jmx-console,j2eeType=Servlet,name=DisplayMBeans,
attachment: null
| ++++++ properties: [objectName, minTime, statisticsProvider, loadTime, classLoadTime,
processingTime, requestCount, modelerType, errorCount, stateManageable, eventProvider,
engineName, maxTime]
| +++
ManagedComponent(name=jboss.web:J2EEApplication=none,J2EEServer=none,WebModule=//localhost/jmx-console,j2eeType=Servlet,name=InspectMBean,
type=(ComponentType{type=MBean, subtype=Servlet}),
compName=jboss.web:J2EEApplication=none,J2EEServer=none,WebModule=//localhost/jmx-console,j2eeType=Servlet,name=InspectMBean,
attachment: null
| ++++++ properties: [objectName, minTime, statisticsProvider, loadTime, classLoadTime,
processingTime, requestCount, modelerType, errorCount, stateManageable, eventProvider,
engineName, maxTime]
| +++
ManagedComponent(name=jboss.web:J2EEApplication=none,J2EEServer=none,WebModule=//localhost/jmx-console,j2eeType=Servlet,name=ClusterView,
type=(ComponentType{type=MBean, subtype=Servlet}),
compName=jboss.web:J2EEApplication=none,J2EEServer=none,WebModule=//localhost/jmx-console,j2eeType=Servlet,name=ClusterView,
attachment: null
| ++++++ properties: [objectName, minTime, statisticsProvider, loadTime, classLoadTime,
processingTime, requestCount, modelerType, errorCount, stateManageable, eventProvider,
engineName, maxTime]
| +++
ManagedComponent(name=jboss.web:J2EEApplication=none,J2EEServer=none,WebModule=//localhost/jmx-console,j2eeType=Servlet,name=ClusteredConsoleServlet,
type=(ComponentType{type=MBean, subtype=Servlet}),
compName=jboss.web:J2EEApplication=none,J2EEServer=none,WebModule=//localhost/jmx-console,j2eeType=Servlet,name=ClusteredConsoleServlet,
attachment: null
| ++++++ properties: [objectName, minTime, statisticsProvider, loadTime, classLoadTime,
processingTime, requestCount, modelerType, errorCount, stateManageable, eventProvider,
engineName, maxTime]
| +++
ManagedComponent(name=jboss.web:J2EEApplication=none,J2EEServer=none,WebModule=//localhost/jmx-console,j2eeType=Servlet,name=HtmlAdaptor,
type=(ComponentType{type=MBean, subtype=Servlet}),
compName=jboss.web:J2EEApplication=none,J2EEServer=none,WebModule=//localhost/jmx-console,j2eeType=Servlet,name=HtmlAdaptor,
attachment: null
| ++++++ properties: [objectName, minTime, statisticsProvider, loadTime, classLoadTime,
processingTime, requestCount, modelerType, errorCount, stateManageable, eventProvider,
engineName, maxTime]
|
This is based on a single ProxyManagedDeploymentFactory in the
profileservice-jboss-beans.xml that combines the three types of mbeans:
| <bean name="WarManagedDeploymentFactory"
|
class="org.jboss.profileservice.management.ProxyManagedDeploymentFactory">
| <property name="factoryName">War</property>
|
| <property name="defaultViewUse">STATISTIC</property>
| <property name="rootMOPatterns">
| <set
elementClass="org.jboss.profileservice.management.ProxyDeploymentInfo">
| <!-- Manager -->
| <bean
class="org.jboss.profileservice.management.ProxyDeploymentInfo">
| <property name="compType">MBean</property>
| <property
name="compSubtype">WebApplicationManager</property>
| <property
name="pattern">jboss.web:host=localhost,type=Manager,*</property>
| <property name="nameBuilder">
| <inject
bean="WarManagerMBeanDeploymentNameBuilder"/>
| </property>
| </bean>
| <!-- WebModule -->
| <bean
class="org.jboss.profileservice.management.ProxyDeploymentInfo">
| <property name="compType">MBean</property>
| <property
name="compSubtype">WebApplication</property>
| <property
name="pattern">jboss.web:J2EEApplication=none,J2EEServer=none,j2eeType=WebModule,*</property>
| <property name="nameBuilder">
| <inject
bean="SimpleMBeanDeploymentNameBuilder"/>
| </property>
| <property name="componentInfo">
| <map keyClass="java.lang.String"
valueClass="java.lang.String">
| <!-- Process the servlets components -->
| <entry>
| <key>servlets</key>
| <value>MBean:Servlet</value>
| </entry>
| </map>
| </property>
| </bean>
| </set>
| </property>
| </bean>
|
View the original post :
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4230636#...
Reply to the post :
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&a...