Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Jetty/Feature/JMX"

< Jetty‎ | Feature
Line 1: Line 1:
 
{{Jetty Feature
 
{{Jetty Feature
| introduction =
+
| introduction =  
  
The Jetty [http://java.sun.com/products/JavaManagement/ JMX] integration is based on the ObjectMBean implementation of DynamicMBean. This implementation allows an arbitrary POJO to be wrapped in an MBean and for meta data to be provided by [http://dev.eclipse.org/viewcvs/index.cgi/jetty/trunk/jetty-jmx/src/main/resources/org/eclipse/jetty/?root=RT_Jetty properties files]
+
The Jetty [http://java.sun.com/products/JavaManagement/ JMX] integration is based on the ObjectMBean implementation of DynamicMBean. This implementation allows an arbitrary POJO to be wrapped in an MBean and for meta data to be provided by [http://dev.eclipse.org/viewcvs/index.cgi/jetty/trunk/jetty-jmx/src/main/resources/org/eclipse/jetty/?root=RT_Jetty properties files]  
  
The creation of MBeans is coordinated by the MBeanContainer implementation of the Container.Listener interface. The Jetty Server and it's components use a [http://download.eclipse.org/jetty/stable-7/apidocs/org/eclipse/jetty/util/component/Container.html Container] to maintain a containment tree of components and to support notification of changes to that tree. The MBeanContainer class listens for Container events and creates and destroys MBeans as required to wrap all Jetty components.
+
The creation of MBeans is coordinated by the MBeanContainer implementation of the Container.Listener interface. The Jetty Server and it's components use a [http://download.eclipse.org/jetty/stable-7/apidocs/org/eclipse/jetty/util/component/Container.html Container] to maintain a containment tree of components and to support notification of changes to that tree. The MBeanContainer class listens for Container events and creates and destroys MBeans as required to wrap all Jetty components. | body =  
| body =
+
  
 +
<br>
  
== Using Jetty MBeans ==
+
== Using Jetty MBeans ==
  
The simplest way to use Jetty MBeans is to use the JVM supplied [http://java.sun.com/developer/technicalArticles/J2SE/jconsole.html JConsole] utility. An internal HTTP agent can also be used (see jetty-jmx.xml config file comments).
+
The simplest way to use Jetty MBeans is to use the JVM supplied [http://java.sun.com/developer/technicalArticles/J2SE/jconsole.html JConsole] utility. An internal HTTP agent can also be used (see jetty-jmx.xml config file comments).  
  
See [Run Jetty with JConsole] for instructions on how to configure jmx for use with Sun's [http://java.sun.com/developer/technicalArticles/J2SE/jconsole.html JConsole].
+
See [Run Jetty with JConsole] for instructions on how to configure jmx for use with Sun's [http://java.sun.com/developer/technicalArticles/J2SE/jconsole.html JConsole].  
  
== Jetty Standalone ==
+
== Jetty Standalone ==
  
The MBeanContainer instance can be configured for a Jetty server by the jetty-jmx.xml configuration file. This can be run with the standard configuration file as follows:
+
The MBeanContainer instance can be configured for a Jetty server by the jetty-jmx.xml configuration file. This can be run with the standard configuration file as follows: <source lang="text">
<source lang="text">
+
 
java -jar start.jar etc/jetty-jmx.xml etc/jetty.xml
 
java -jar start.jar etc/jetty-jmx.xml etc/jetty.xml
  
Line 46: Line 45:
 
| more =
 
| more =
 
See [Run Jetty with JConsole] for instructions on how to configure jmx for use with Sun's [http://java.sun.com/developer/technicalArticles/J2SE/jconsole.html JConsole].
 
See [Run Jetty with JConsole] for instructions on how to configure jmx for use with Sun's [http://java.sun.com/developer/technicalArticles/J2SE/jconsole.html JConsole].
 +
| categories = [[Category:Jetty Feature]]
 
}}
 
}}

Revision as of 20:50, 21 December 2009

{{Jetty Feature | introduction =

The Jetty JMX integration is based on the ObjectMBean implementation of DynamicMBean. This implementation allows an arbitrary POJO to be wrapped in an MBean and for meta data to be provided by properties files

The creation of MBeans is coordinated by the MBeanContainer implementation of the Container.Listener interface. The Jetty Server and it's components use a Container to maintain a containment tree of components and to support notification of changes to that tree. The MBeanContainer class listens for Container events and creates and destroys MBeans as required to wrap all Jetty components. | body =


Using Jetty MBeans

The simplest way to use Jetty MBeans is to use the JVM supplied JConsole utility. An internal HTTP agent can also be used (see jetty-jmx.xml config file comments).

See [Run Jetty with JConsole] for instructions on how to configure jmx for use with Sun's JConsole.

Jetty Standalone

The MBeanContainer instance can be configured for a Jetty server by the jetty-jmx.xml configuration file. This can be run with the standard configuration file as follows:
java -jar start.jar etc/jetty-jmx.xml etc/jetty.xml
 
 
Jetty 7 requires -DOPTIONS=jmx to be used when starting up Jetty. That is, instead of the above, use this:
java '''-DOPTIONS=jmx''' -jar start.jar etc/jetty-jmx.xml etc/jetty.xml
 
== Jetty Maven Plugin ==
 
If you are using the [http://jetty.mortbay.org/maven-plugin/index.html Jetty Maven plugin] you should copy the etc/jetty-jmx.xml file into your webapp project somewhere, such as src/etc, then add a <jettyConfig> element to the plugin <configuration>:
<source lang="xml">
<plugin>
        <groupid>org.mortbay.jetty</groupid>
        <artifactid>maven-jetty-plugin</artifactid>
        <version>${project.version}</version>
        <configuration>
          <scanintervalseconds>10</scanintervalseconds>
          <jettyconfig>src/etc/jetty-jmx.xml</jettyconfig>
          <userrealms>
            <userrealm implementation="org.mortbay.jetty.security.HashUserRealm">
              <name>Test Realm</name>
              <config>../../etc/realm.properties</config>
            </userrealm>
          </userrealms>
        </configuration>
</plugin>
 
| more =
See [Run Jetty with JConsole] for instructions on how to configure jmx for use with Sun's [http://java.sun.com/developer/technicalArticles/J2SE/jconsole.html JConsole].
| categories = [[Category:Jetty Feature]]
}}

Back to the top