mx4j.util
Class StandardMBeanProxy

java.lang.Object
  extended bymx4j.util.StandardMBeanProxy
Direct Known Subclasses:
RemoteStandardMBeanProxy

public class StandardMBeanProxy
extends java.lang.Object

A utility class that creates proxies for invocation on standard MBeans (does not work for DynamicMBeans) on local MBeanServers.
Usage example:

 public interface MyServiceMBean {...}
 public class MyService implements MyServiceMBean {...}
 pulic class Main
 {
    public static void main(String[] args) throws Exception
    {
       MBeanServer server = ...;
       ObjectName myServiceObjectName = ...;

       MyServiceMBean mbean = (MyServiceMBean)StandardMBeanProxy.create(MyServiceMBean.class, server, myServiceObjectName);

       ...
    }
 }
 

Version:
$Revision: 1.6 $
Author:
Simone Bordet

Nested Class Summary
protected static class StandardMBeanProxy.Handler
          Base class for MBeanServer invocation handlers.
 
Constructor Summary
StandardMBeanProxy()
           
 
Method Summary
static java.lang.Object create(java.lang.Class mbeanInterface, MBeanServer server, ObjectName name)
          Creates a proxy with the given MBean interface for an MBean with the specified ObjectName living in the specified local MBeanServer.
static java.lang.Object create(java.lang.Class mbeanInterface, ObjectName name)
          Deprecated. Replaced by create(Class mbeanInterface, MBeanServer server, ObjectName name)
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StandardMBeanProxy

public StandardMBeanProxy()
Method Detail

create

public static java.lang.Object create(java.lang.Class mbeanInterface,
                                      ObjectName name)
Deprecated. Replaced by create(Class mbeanInterface, MBeanServer server, ObjectName name)

Creates a proxy with the given MBean interface for an MBean with the specified name living in the MBeanServer returned by MBeanServerFactory.findMBeanServer(null).get(0).


create

public static java.lang.Object create(java.lang.Class mbeanInterface,
                                      MBeanServer server,
                                      ObjectName name)
Creates a proxy with the given MBean interface for an MBean with the specified ObjectName living in the specified local MBeanServer.
Calling this method when the given ObjectName does not represent a registered MBean in the given MBeanServer results in an exception being thrown. If the MBean is unregistered after the proxy has been created, an attempt to call any method on the proxy will result in a UndeclaredThrowableException being thrown. MBeanServer's behavior would be to throw an InstanceNotFoundException, but this exception is normally not declared in the throws clause of MBean's management interface, thus resulting in the UndeclaredThrowableException being thrown instead.



Copyright © 2001-2002 MX4J Team. All Rights Reserved.