MX4J English Documentation


Table of Contents

1. MX4J and JMX Overview
Overview
MX4J
What is JMX ?
For what can you use JMX ?
MX4J's JMX implementation
License
2. JMX 1.2 Explained
javax.management.ObjectName changes
The getInstance() methods
The quote() and unquote() methods
Support for remote API
Overview
The javax.management.MBeanServer class inherits from javax.management.MBeanServerConnection
The javax.management.MBeanServerBuilder class
Introduction
How to use MX4J's MBeanServer implementation with Sun's JMX Reference Implementation.
How to "decorate" MBeanServer methods.
More complex MBeanServer "decorations".
Possible usages of MBeanServer "decorators"
The javax.management.MBeanServerInvocationHandler class
Introduction
MBeanServerInvocationHandler usage
Porting examples for mx4j.util.StandardMBeanProxy
3. JSR 160 (JMX Remoting) Explained
What is JSR 160 ?
Introduction
MX4J's JSR 160 implementation
How to use JSR 160
Introduction
JMXServiceURLs
Creating a JMXConnectorServer
Creating a JMXConnector
Remote Notifications
JSR 160 Security
Requiring user authentication to connect to a JMXConnectorServer
Running under SecurityManager and Subject Delegation
Advanced JSR 160
Intercepting calls between the JSR 160 JMXConnectorServer and the MBeanServer
Standard JSR 160 JMXConnectors and JMXConnectorServers
Overview of RMIConnector and RMIConnectorServer
Connecting to the RMIConnectorServer
ORB properties for JMXConnector and JMXConnectorServer over IIOP
RMI socket factories (over SSL) for the RMIConnectorServer over JRMP
MX4J's JSR 160 JMXConnectors and JMXConnectorServers
The SOAP JSR 160 connector
The HESSIAN and BURLAP JSR 160 connectors
Using HTTP-based connectors over HTTPS
Configuration of the web container
Configuration of the keystore
Code examples
Porting old MX4J remoting code to JSR 160
Introduction
Porting Examples
MX4J Remote Tools and Utilities
Remote MBean Proxying
4. MX4J Extensions and utilities
Extensions
Standard MBean descriptions
Interacting with the MX4J implementation
Internal logging redirection
MBeanServerInterceptor configuration
5. MX4J HTTP Adaptor
HttpAdaptor
Introduction
Parameters and operations
Security
Usage
Available requests
XSLTProcessor
Introduction
Compatibility
Attributes
XSL Development
Internationalization
6. MX4J Tools
XML Configuration Loader
Loading and starting MBeans using XML files
Dynamic MBeans
AbstractDynamicMBean base class for DynamicMBean implementation
Naming MBeans
The NamingService MBean
The CosNamingService MBean
Mailer MBean
Introduction
Configuration
Keyword expanding
Jython MBean
Introduction
Configuration
Built-in functions
7. MX4J Examples
Services
The Relation Service example
MBeans
RMI MBean example
Tools
Using XDoclet
FilePersister example
8. FAQ
MX4J Frequently Asked Questions
9. MX4J Developer's guide
Introduction
Coding conventions
Using logging
Writing documentation
Releasing MX4J
MX4J Implementation Architecture

List of Tables

7.1. List of Javadoc tags

List of Examples

2.1.
2.2. A "decorating" MBeanServer that logs method calls.
2.3. A "decorating" MBeanServerBuilder
2.4. The MBeanServerBuilder and MBeanServer chains
2.5. A "decorating" MBeanServerBuilder
2.6. A More complex MBeanServerBuilder and MBeanServer chains
2.7. Standard JMX invocation
2.8. JMX invocation with MBeanServerInvocationHandler
2.9. Remote JMX invocation with MBeanServerInvocationHandler
2.10. Old MX4J 1.x proxy API
2.11. Standard JMX 1.2 proxy API
3.1. Creating and starting a standalone JMXConnectorServer
3.2. Creating and starting an MBean JMXConnectorServer
3.3. Connecting a JMXConnector
3.4. Creating and connecting a JMXConnector
3.5. Registering a NotificationListener to a remote MBean
3.6. Using JMXAuthenticator in a JMXConnectorServer
3.7. Passing credentials using a JMXConnector
3.8. The server.policy file
3.9. Starting the secured server
3.10. The principal-specific permissions
3.11. Simple subject interceptor skeleton
3.12. Setting up the interception on the JMXConnectorServer
3.13. Examples of encoded form JMXServiceURLs
3.14. Examples of JNDI URL form JMXServiceURLs
3.15. Examples of JNDI short form JMXServiceURLs
3.16. How to specify the RMI socket factories
3.17. Starting the SOAPConnectorServer
3.18. Connecting to the SOAPConnectorServer
3.19. Starting the HessianConnectorServer
3.20. Connecting to the HessianConnectorServer
3.21. Example Jetty configuration file to run JMXConnectorServers over HTTPS
3.22. Starting and connecting to the Hessian connector server over HTTPS
3.23. Old MX4J 1.x remoting code, server side
3.24. JSR 160 remoting code, server side
3.25. Old MX4J 1.x remoting code, client side
3.26. JSR 160 remoting code, client side
3.27. Remote MBean proxying
4.1. Specifying description for standard MBeans
4.2. Logging redirection to Log4J
4.3. Logging redirection to the broadcaster MBean
4.4. Using the interceptor configurator API
5.1. Instantiating the HttpAdaptor
5.2. Installing a non-default Processor
6.1. Main class for configuration loading
6.2. XML file for configuration of MX4J's HttpAdaptor
6.3. XML file for configuration of a JSR 160 connector server
6.4. Simple XML file that specifies the command port
6.5. Simple Java class that invokes "shutdown" to execute the shutdown section
6.6. XML configuration DTD
6.7. Subclassing AbstractDynamicMBean
6.8. Delegating to AbstractDynamicMBean subclass
6.9. Subclassing AbstractDynamicMBean
6.10. Deploying the NamingService MBean
6.11. Starting and stopping the NamingService MBean
6.12. Changing the default port
6.13. Changing the port at runtime
7.1. Creating the RelationService
7.2. Adding a RelationType
7.3. Building Roles
7.4. The Server class
7.5. The MyRemoteServiceObject class
7.6. Defining the xdoclet classpath and Ant task.
7.7.
7.8. MBeanOne implementation
7.9. MBeanTwo implementation
7.10. The FilePersisterAgent
7.11.
9.1. One-line one-brace style
9.2. Saving run-time cost of String concatenation
9.3. Saving run-time cost of String concatenation with StringBuffer
9.4. Retrieving a Logger instance
9.5. Logs with error priority
9.6. Logs with fatal priority