public class MBeanServerFactory extends Object
MBean服务器提供参考。没有这个类的实例。
由于JMX 1.2这类可以替换默认的MBeanServer实施。这是使用MBeanServerBuilder类。最初的MBeanServerBuilder类来实例化可以通过javax.management.builder.initial系统属性指定。指定的类必须是MBeanServerBuilder公共类,必须有一个公共的空构造函数。
默认情况下,如果没有价值,指定属性,建立了javax.management.MBeanServerBuilder实例。否则,加载指定的类的使用Thread.currentThread().getContextClassLoader() mbeanserverfactory尝试,或如果这是无效的,Class.forName()。然后创建该类的一个实例使用Class.newInstance()初始。如果有任何异常的是在这个过程中提出的(例如ClassNotFoundException,InstantiationException)的mbeanserverfactory将会从RuntimeException异常。
系统的javax.management.builder.initial物业咨询每一次新的MBeanServer需要创建的类,和指向的属性加载。如果这类不同,现在的MBeanServerBuilder,然后一个新的MBeanServerBuilder了。否则,可能会创建一个新的mbeanserverfactory mbeanserverbuilder或重用当前。
如果类所指向的属性不能被加载,或无效的子类,然后MBeanServerBuilder是一个例外,没有传播,直到javax.management.builder.initial MBeanServer可以创建系统属性重置为有效值。
MBeanServerBuilder可以把mbeanservers默认mbeanserverbuilder实现返回,为目的,例如增加一个额外的安全层。
| Modifier and Type | Method and Description |
|---|---|
static MBeanServer |
createMBeanServer()
返回一个新的对象与标准的默认域名实施MBeanServer接口。
|
static MBeanServer |
createMBeanServer(String domain)
返回一个新的对象实施
MBeanServer接口与指定的默认域名。
|
static ArrayList<MBeanServer> |
findMBeanServer(String agentId)
返回一个列表注册MBeanServer对象。
|
static ClassLoaderRepository |
getClassLoaderRepository(MBeanServer server)
返回给定的classloaderrepository MBeanServer。
|
static MBeanServer |
newMBeanServer()
返回一个新的对象与标准的默认域名实施MBeanServer接口,没有保持一个内部参考这个新对象。
|
static MBeanServer |
newMBeanServer(String domain)
返回一个新的对象实施的MBeanServer接口与指定的默认域名,而没有让内部参考这个新对象。
|
static void |
releaseMBeanServer(MBeanServer mbeanServer)
删除创建的MBeanServer内部mbeanserverfactory参考。
|
public static void releaseMBeanServer(MBeanServer mbeanServer)
mbeanServer - MBeanServer对象去除。
IllegalArgumentException -如果
mbeanServer不一的
createMBeanServer方法生成的,或者如果
releaseMBeanServer已经呼吁它。
SecurityException -如果有一个要和调用者的权限不包括或暗示
MBeanServerPermission("releaseMBeanServer")。
public static MBeanServer createMBeanServer()
返回一个新的对象与标准的默认域名实施MBeanServer接口。默认的域名作为域名的一部分在MBeans ObjectName当域是由用户指定的是无效的。
标准的默认域名是DefaultDomain。
MBeanServer参考内部保持。这将允许findMBeanServer返回参考这个MBeanServer对象。
这种方法相当于createMBeanServer(null)。
SecurityException -如果有一个要和调用者的权限不包括或暗示
MBeanServerPermission("createMBeanServer")。
JMRuntimeException -如果属性
javax.management.builder.initial存在但它的类的名称不能被实例化通过一个公共的无参数构造函数;或者如果实例化生成器返回null的
newMBeanServerDelegate或
newMBeanServer方法。
ClassCastException -如果属性
javax.management.builder.initial存在并且可以被实例化而不是赋值兼容
MBeanServerBuilder。
public static MBeanServer createMBeanServer(String domain)
返回一个新的对象实施MBeanServer接口与指定的默认域名。给定的域名作为域名的一部分在MBeans ObjectName当域是由用户指定的是无效的。
MBeanServer参考内部保持。这将允许findMBeanServer返回参考这个MBeanServer对象。
domain -创建的MBeanServer默认域名。这个值将被返回
MBeanServer.getDefaultDomain()。
SecurityException -如果有一个要和调用者的权限不包括或暗示
MBeanServerPermission("createMBeanServer")。
JMRuntimeException -如果属性
javax.management.builder.initial存在但它的类的名称不能被实例化通过一个公共的无参数构造函数;或者如果实例化生成器返回null的
newMBeanServerDelegate或
newMBeanServer方法。
ClassCastException -如果属性
javax.management.builder.initial存在并且可以被实例化而不是赋值兼容
MBeanServerBuilder。
public static MBeanServer newMBeanServer()
返回一个新的对象与标准的默认域名实施MBeanServer接口,没有保持一个内部参考这个新对象。默认的域名作为域名的一部分在MBeans ObjectName当域是由用户指定的是无效的。
标准的默认域名是DefaultDomain。
没有保存参考。findMBeanServer将无法返回参考这个MBeanServer对象,但是垃圾收集器能够移除MBeanServer对象不再被引用时,它。
这种方法相当于newMBeanServer(null)。
SecurityException -如果有一个要和调用者的权限不包括或暗示
MBeanServerPermission("newMBeanServer")。
JMRuntimeException -如果属性
javax.management.builder.initial存在但它的类的名称不能被实例化通过一个公共的无参数构造函数;或者如果实例化生成器返回null的
newMBeanServerDelegate或
newMBeanServer方法。
ClassCastException -如果属性
javax.management.builder.initial存在并且可以被实例化而不是赋值兼容
MBeanServerBuilder。
public static MBeanServer newMBeanServer(String domain)
返回一个新的对象实施的MBeanServer接口与指定的默认域名,而没有让内部参考这个新对象。给定的域名作为域名的一部分在MBeans ObjectName当域是由用户指定的是无效的。
没有保存参考。findMBeanServer将无法返回参考这个MBeanServer对象,但是垃圾收集器能够移除MBeanServer对象不再被引用时,它。
domain -创建的MBeanServer默认域名。这个值将被返回
MBeanServer.getDefaultDomain()。
SecurityException -如果有一个要和调用者的权限不包括或暗示
MBeanServerPermission("newMBeanServer")。
JMRuntimeException -如果属性
javax.management.builder.initial存在但它的类的名称不能被实例化通过一个公共的无参数构造函数;或者如果实例化生成器返回null的
newMBeanServerDelegate或
newMBeanServer方法。
ClassCastException -如果属性
javax.management.builder.initial存在并且可以被实例化而不是赋值兼容
MBeanServerBuilder。
public static ArrayList<MBeanServer> findMBeanServer(String agentId)
返回一个列表注册MBeanServer对象。注册MBeanServer对象是由一个createMBeanServer方法创建的而不是随后发布releaseMBeanServer。
agentId -代理标识符的MBeanServer检索。如果这个参数为空,返回所有注册mbeanservers这个JVM。否则,只返回mbeanservers的ID等于
agentId。一个MBeanServer ID为其代表MBean的
MBeanServerId属性。
SecurityException -如果有一个要和调用者的权限不包括或暗示
MBeanServerPermission("findMBeanServer")。
public static ClassLoaderRepository getClassLoaderRepository(MBeanServer server)
server.getClassLoaderRepository()。
server MBeanServer。由于JMX 1.2,如果
server是
null,结果是一个
NullPointerException。这种行为不同于实施1.1在JMX可能使用
null被弃用。
SecurityException -如果有一个要和调用者的权限不包括或暗示
MBeanPermission("getClassLoaderRepository")。
NullPointerException -如果
server是空的。
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.