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
类 JMXConnectorServerFactory

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

public class JMXConnectorServerFactory
extends Object

用于创建 JMX API 连接器服务器的工厂。此类没有实例。

每个连接器服务器都是由 JMXConnectorServerProvider 的实例创建的。此实例如下所示。假设给定的 JMXServiceURL 类似于 "service:jmx:protocol:remainder"。则工厂将尝试查找适当的 JMXConnectorServerProvider 以供 protocol 使用。protocol 中出现的每个 +- 字符都分别由 ._ 替换。

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

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

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

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

pkg.protocol.ServerProvider

如果传给 newJMXConnectorServerenvironment 参数包含关键字 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 conventions for service providers,其服务接口为 JMXConnectorServerProvider

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

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

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

从以下版本开始:
1.5

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

字段详细信息

DEFAULT_CLASS_LOADER

public static final String DEFAULT_CLASS_LOADER

指定默认的类加载器的属性名称。此类加载器用于反序列化从客户端收到请求对象(之前可能参考了一个特定于 MBean 的类加载器)。与此属性关联的值为 ClassLoader 的实例。

另请参见:
常量字段值

DEFAULT_CLASS_LOADER_NAME

public static final String DEFAULT_CLASS_LOADER_NAME

指定默认的类加载器 MBean 名称的属性名称。此类加载器用于反序列化从客户端收到请求对象(之前可能参考了一个特定于 MBean 的类加载器)。与此属性关联的值为 ObjectName 的实例。

另请参见:
常量字段值

PROTOCOL_PROVIDER_PACKAGES

public static final String PROTOCOL_PROVIDER_PACKAGES

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

另请参见:
常量字段值

PROTOCOL_PROVIDER_CLASS_LOADER

public static final String PROTOCOL_PROVIDER_CLASS_LOADER

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

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

newJMXConnectorServer

public static JMXConnectorServer newJMXConnectorServer(JMXServiceURL serviceURL,
                                                       Map<String,?> environment,
                                                       MBeanServer mbeanServer)
                                                throws IOException

创建位于给定地址的连接器服务器。结果服务器直到调用其 start 方法时才启动。

参数:
serviceURL - 新的连接器服务器的地址。新的连接器服务器的 getAddress 方法返回的连接器服务器的实际地址不一定完全相同。例如,它可能包含一个端口号,而原始地址中并没有该端口号。
environment - 用于控制新连接器服务器的行为的一组属性。此参数可以为 null。此映射中关键字必须为字符串。每个关联值的适当类型取决于属性。此调用不改变 environment 的内容。
mbeanServer - 该连接器服务器连接到的 MBean 服务器。如果该连接器服务器将通过注册的方式连接到 MBean 服务器,则为 Null。
返回:
代表新的连接器服务器的 JMXConnectorServer。每次对此方法的成功调用都生成不同的对象。
抛出:
NullPointerException - 如果 serviceURL 为 null。
IOException - 如果由于存在通信问题而导致无法建立连接器服务器。
MalformedURLException - 如果 serviceURL 中的协议无提供程序。
JMXProviderException - 如果 serviceURL 中的协议有提供程序,但提供程序由于某种原因而无法使用。

JavaTM 2 Platform
Standard Ed. 5.0

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

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