java.applet

java.awt

java.awt.color

java.awt.datatransfer

java.awt.dnd

java.awt.event

java.awt.font

java.awt.geom

java.awt.im

java.awt.im.spi

java.awt.image

java.awt.image.renderable

java.awt.print

java.beans

java.beans.beancontext

java.io

java.lang

java.lang.annotation

java.lang.instrument

java.lang.management

java.lang.ref

java.lang.reflect

java.math

java.net

java.nio

java.nio.channels

java.nio.channels.spi

java.nio.charset

java.nio.charset.spi

java.rmi

java.rmi.activation

java.rmi.dgc

java.rmi.registry

java.rmi.server

java.security

java.security.acl

java.security.cert

java.security.interfaces

java.security.spec

java.sql

java.text

java.util

java.util.concurrent

java.util.concurrent.atomic

java.util.concurrent.locks

java.util.jar

java.util.logging

java.util.prefs

java.util.regex

java.util.zip

javax.accessibility

javax.activity

javax.crypto

javax.crypto.interfaces

javax.crypto.spec

javax.imageio

javax.imageio.event

javax.imageio.metadata

javax.imageio.plugins.bmp

javax.imageio.plugins.jpeg

javax.imageio.spi

javax.imageio.stream

javax.management

javax.management.loading

javax.management.modelmbean

javax.management.monitor

javax.management.openmbean

javax.management.relation

javax.management.remote

javax.management.remote.rmi

javax.management.timer

javax.naming

javax.naming.directory

javax.naming.event

javax.naming.ldap

javax.naming.spi

javax.net

javax.net.ssl

javax.print

javax.print.attribute

javax.print.attribute.standard

javax.print.event

javax.rmi

javax.rmi.CORBA

javax.rmi.ssl

javax.security.auth

javax.security.auth.callback

javax.security.auth.kerberos

javax.security.auth.login

javax.security.auth.spi

javax.security.auth.x500

javax.security.cert

javax.security.sasl

javax.sound.midi

javax.sound.midi.spi

javax.sound.sampled

javax.sound.sampled.spi

javax.sql

javax.sql.rowset

javax.sql.rowset.serial

javax.sql.rowset.spi

javax.swing

javax.swing.border

javax.swing.colorchooser

javax.swing.event

javax.swing.filechooser

javax.swing.plaf

javax.swing.plaf.basic

javax.swing.plaf.metal

javax.swing.plaf.multi

javax.swing.plaf.synth

javax.swing.table

javax.swing.text

javax.swing.text

javax.swing.text.parser

javax.swing.text.rtf

javax.swing.tree

javax.swing.undo

javax.transaction

javax.transaction.xa

javax.xml

javax.xml.datatype

javax.xml.namespace

javax.xml.parsers

javax.xml.transform

javax.xml.transform.dom

javax.xml.transform.sax

javax.xml.transform.stream

javax.xml.validation

javax.xml.xpath

org.ietf.jgss

org.omg.CORBA

org.omg.CORBA_2_3

org.omg.CORBA_2_3.portable

org.omg.CORBA.DynAnyPackage

org.omg.CORBA.ORBPackage

org.omg.CORBA.portable

org.omg.CORBA.TypeCodePackage

org.omg.CosNaming

org.omg.CosNaming.NamingContextExtPackage

org.omg.CosNaming.NamingContextPackage

org.omg.Dynamic

org.omg.DynamicAny

org.omg.DynamicAny.DynAnyFactoryPackage

org.omg.DynamicAny.DynAnyPackage

org.omg.IOP

org.omg.IOP.CodecFactoryPackage

org.omg.IOP.CodecPackage

org.omg.Messaging

org.omg.PortableInterceptor

org.omg.PortableInterceptor.ORBInitInfoPackage

org.omg.PortableServer

org.omg.PortableServer.CurrentPackage

org.omg.PortableServer.POAManagerPackage

org.omg.PortableServer.POAPackage

org.omg.PortableServer.portable

org.omg.PortableServer.ServantLocatorPackage

org.omg.SendingContext

org.omg.stub.java.rmi

org.w3c.dom

org.w3c.dom.bootstrap

org.w3c.dom.events

org.w3c.dom.ls

org.xml.sax

org.xml.sax.ext

org.xml.sax.helpers

allclasses-frame

allclasses-noframe

constant-values

deprecated-list

help-doc

JavaTM 2 Platform
Standard Ed. 5.0

javax.management.remote
类 JMXConnectorFactory

java.lang.Object
  继承者 javax.management.remote.JMXConnectorFactory

public class JMXConnectorFactory
extends Object

用于创建 JMX API 连接器客户端的工厂。此类没有实例。

通常使用此类的 connect 方法建立连接。更高级的应用程序可使用 newJMXConnector 分离连接器客户端的创建,使用 JMXConnector.connect(Map) 建立自身的连接。

每个客户端都是由 JMXConnectorProvider 的实例创建的。此实例按如下方式建立。假设给定的 JMXServiceURL 类似于 "service:jmx:protocol:remainder"。则工厂将尝试查找适当的 JMXConnectorProvider 以供 protocol 使用。protocol 中出现的每个 +- 字符都分别由 ._ 替换。

提供程序包列表 的搜索如下所示:

  1. 如果传给 newJMXConnectorenvironment 参数包含关键字 jmx.remote.protocol.provider.pkgs,则关联的值为提供程序包列表。
  2. 否则,如果存在系统属性 jmx.remote.protocol.provider.pkgs,则其值为提供程序包列表。
  3. 否则,没有任何提供程序包列表。

提供程序包列表是一个表现为由竖直线 (|) 分隔的非空 Java 包名称列表的字符串。如果该字符串为空,则提供程序包列表也为空。如果提供程序包列表不是一个字符串,或者如果它包含空字符串元素,则抛出 JMXProviderException 异常。

如果存在提供程序包列表并且不为空,则对于列表中的每个 pkg 元素,此工厂将尝试加载以下类

pkg.protocol.ClientProvider

如果传给 newJMXConnectorenvironment 参数包含关键字 jmx.remote.protocol.provider.class.loader,则关联的值为用于加载提供程序的类加载器。如果关联的值不是一个 ClassLoader 的实例,则抛出 IllegalArgumentException

如果 environment 参数中没有 jmx.remote.protocol.provider.class.loader 关键字,则使用调用线程的上下文类加载器。

如果尝试加载该类时生成 ClassNotFoundException,则继续对列表中的下一个元素搜索处理程序。

否则,提供程序查找的问题将由 JMXProviderException 通过其 cause 指示如下所示的基础异常来通知:

  • 如果尝试加载类时生成了一个 ClassNotFoundException 之外的异常,则它就是 cause
  • 如果该类的 Class.newInstance() 生成了异常,则这就是 cause

如果上述步骤中未找到任何提供程序,包括无提供程序包列表的默认情况,则实现将使用 protocol 自身的提供程序,或者如果也没有自身的提供程序,则抛出一个 MalformedURLException。实现也可以选择通过其他途径查找提供程序。例如,它可能支持服务提供程序的 JAR 约定,其服务接口为 JMXConnectorProvider

每个实现都必须支持由字符串 rmiiiop 指定的 RMI 连接器协议。

一旦找到了提供程序,newJMXConnector 方法的结果就是在该提供程序上调用 newJMXConnector 的结果。

传给 JMXConnectorProviderMap 参数为一个新的只读 Map,它包含了原先传给 JMXConnectorFactory.newJMXConnectorenvironment 参数中的所有条目(如果有)。此外,如果 environment 参数中没有 jmx.remote.protocol.provider.class.loader 关键字,则将此关键字添加到新的只读 Map 中。关联的值为调用线程的上下文类加载器。

从以下版本开始:
1.5

字段摘要
static String DEFAULT_CLASS_LOADER
          指定默认的类加载器的属性名称。
static String PROTOCOL_PROVIDER_CLASS_LOADER
          指定用于加载协议提供程序的类加载器的属性名称。
static String PROTOCOL_PROVIDER_PACKAGES
          指定查找协议的处理程序时需参考的提供程序包的属性名称。
 
方法摘要
static JMXConnector connect(JMXServiceURL serviceURL)
          创建到位于给定地址的连接器服务器的连接。
static JMXConnector connect(JMXServiceURL serviceURL, Map<String,?> environment)
          创建到位于给定地址的连接器服务器的连接。
static JMXConnector newJMXConnector(JMXServiceURL serviceURL, Map<String,?> environment)
          为位于给定地址的连接器服务器创建一个连接器客户端。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

DEFAULT_CLASS_LOADER

public static final String DEFAULT_CLASS_LOADER

指定默认的类加载器的属性名称。该类加载器用于反序列化来自远程 MBeanServerConnection 调用的返回值及异常。与此属性关联的值为 ClassLoader 的实例。

另请参见:
常量字段值

PROTOCOL_PROVIDER_PACKAGES

public static final String PROTOCOL_PROVIDER_PACKAGES

指定查找协议的处理程序时需参考的提供程序包的属性名称。与此属性关联的值为由竖直线 (|) 分隔的包名称的字符串。

另请参见:
常量字段值

PROTOCOL_PROVIDER_CLASS_LOADER

public static final String PROTOCOL_PROVIDER_CLASS_LOADER

指定用于加载协议提供程序的类加载器的属性名称。与此属性关联的值为 ClassLoader 的实例。

另请参见:
常量字段值
方法详细信息

connect

public static JMXConnector connect(JMXServiceURL serviceURL)
                            throws IOException

创建到位于给定地址的连接器服务器的连接。

此方法等效于 connect(serviceURL, null)

参数:
serviceURL - 要连接到的连接器服务器的地址。
返回:
调用过其 connect 方法的 JMXConnector
抛出:
NullPointerException - 如果 serviceURL 为 null。
IOException - 如果由于通信问题造成无法建立连接器客户端或连接。
SecurityException - 如果由于安全原因而无法建立连接。

connect

public static JMXConnector connect(JMXServiceURL serviceURL,
                                   Map<String,?> environment)
                            throws IOException

创建到位于给定地址的连接器服务器的连接。

此方法等效于:

 JMXConnector conn = JMXConnectorFactory.newJMXConnector(serviceURL,
                                                         environment);
 conn.connect(environment);
 

参数:
serviceURL - 要连接到的连接器服务器的地址。
environment - 用于确定如何建立连接的一组属性。此参数可以为 null。此映射中关键字必须为字符串。每个关联值的适当类型取决于属性。此调用不改变 environment 的内容。
返回:
代表新建立连接的 JMXConnector。每次对此方法的成功调用都生成不同的对象。
抛出:
NullPointerException - 如果 serviceURL 为 null。
IOException - 如果由于通信问题造成无法建立连接器客户端或连接。
SecurityException - 如果由于安全原因而无法建立连接。

newJMXConnector

public static JMXConnector newJMXConnector(JMXServiceURL serviceURL,
                                           Map<String,?> environment)
                                    throws IOException

为位于给定地址的连接器服务器创建一个连接器客户端。结果客户端直到调用其 connect 方法时才连接。

参数:
serviceURL - 要连接到的连接器服务器的地址。
environment - 用于确定如何建立连接的一组属性。此参数可以为 null。此映射中关键字必须为字符串。每个关联值的适当类型取决于属性。此调用不改变 environment 的内容。
返回:
代表新连接器客户端的 JMXConnector。每次对此方法的成功调用都生成不同的对象。
抛出:
NullPointerException - 如果 serviceURL 为 null。
IOException - 如果由于通信问题而导致无法建立连接器客户端。
MalformedURLException - 如果 serviceURL 中的协议无提供程序。
JMXProviderException - 如果 serviceURL 中的协议有提供程序,但提供程序由于某种原因而无法使用。

JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策