Package javax.management.remote
用于远程访问JMX MBean服务器的接口。 该软件包定义了使JMX MBean服务器可远程管理的基本接口。 该功能的规范由JMX Specification, version 1.4的第III部分完成
JMX规范定义了连接器的概念。 连接器连接到JMX API MBean服务器,并使其可供远程Java客户端访问。 连接器的客户端实际上导出与MBean服务器相同的接口,特别是MBeanServerConnection
接口。
连接器使MBean服务器可通过给定协议远程访问。 JMX Remote API允许使用不同类型的连接器:
- JMX Remote API定义了一个标准连接器RMI Connector ,它通过RMI提供对MBeanServer的远程访问。
- JMX Remote API还定义了一个名为JMXMP Connector的可选连接器,它实现了JMX消息协议(JMXMP)。 因为它是可选的,所以它不是该捆绑包的一部分(参见下面的注释)。
- 用户定义的连接器协议也可以使用
JMXConnectorFactory
和可选的通用连接器(不是此捆绑包的一部分,请参见下面的注释)。
注意 :实现JMX Remote API可选部分的可选包不包含在Java SE Platform中,但可从JMX Remote API Reference Implementation获得 。
连接器地址
通常,连接器服务器具有地址,由类JMXServiceURL
表示。 RMI连接器的地址可能如下所示:
service:jmx:rmi:///jndi/rmi://myhost:1099/myname
在此JMXServiceURL
,第一个rmi:
指定RMI连接器,而第二个rmi:
指定RMI连接器服务器将其存根存储到的RMI注册表。
上面的例子只显示了一种地址形式。 RMI连接器的地址可以采用多种形式,详细信息请参见包
的文档。 javax.management.remote.rmi
创建连接器服务器
通过构造子类JMXConnectorServer
的实例来创建连接器服务器。 通常,使用方法JMXConnectorServerFactory.newJMXConnectorServer
创建此实例。
通常,连接器服务器通过在MBean服务器中注册MBean服务器或通过在创建连接器服务器时将MBean服务器作为参数提供来与MBean服务器相关联。
创建连接器客户端
一种连接器,客户机通常是通过提供所创建的JMXServiceURL
连接器服务器的连接到至JMXConnectorFactory.connect
方法。
对于更专业的用途,可以通过直接实例化实现JMXConnector
接口的类来创建连接器客户端,例如类RMIConnector
。
其他客户端或服务器参数
创建连接器客户端或服务器时,可以提供定义其他参数的Map
类型的对象。 此Map中的每个条目都有一个键,该键是一个字符串,其关键值的类型适合该键。 JMX Remote API定义的标准密钥都以字符串“ jmx.remote.
”开头。 文档JMX Remote API列出了这些标准密钥。
连接标识符
连接器服务器打开的每个连接都有一个字符串标识符,称为其连接标识 。 此标识符出现在连接器服务器发出的JMXConnectionNotification
事件中,在getConnectionIds()
返回的列表中,以及客户端getConnectionId()
方法返回的值中。
例如,连接ID可能如下所示:
rmi://192.18.1.9 username 1
遵循此约定的连接ID的形式语法如下(使用Java语言规范的 2.4节中的语法表示法):
ConnectionId:
Protocol : ClientAddressopt Space ClientIdopt Space ArbitraryText
ClientAddress:
// HostAddress ClientPortopt
ClientPort
: HostPort
Protocol
是Protocol
可识别的协议 。
ClientAddress
是连接客户端的地址和端口,如果可以确定,则不然。 HostAddress
是客户端以数字或DNS形式连接的主机的Internet地址。 数字IPv6地址括在方括号[]
。 HostPort
是客户端连接的十进制端口号。
ClientId
是客户端实体的标识,通常是JMXPrincipal.getName()
返回的字符串。 此字符串不得包含空格。
ArbitraryText
是连接器服务器在创建客户端ID时添加的任何其他文本。 至少,必须足以将此连接ID与此连接器服务器当前打开的任何其他连接的ID区分开。
- 从以下版本开始:
- 1.5
- 另请参见:
- JMX Specification, version 1.4
-
接口摘要 接口 描述 JMXAddressable 由具有JMXServiceURL
地址的对象实现。JMXAuthenticator 用于定义远程凭据如何转换为JAAS主题的接口。JMXConnector JMX API连接器的客户端。JMXConnectorProvider 使用给定协议创建JMX API连接器客户端的提供程序。JMXConnectorServerMBean 连接器服务器的MBean接口。JMXConnectorServerProvider 使用给定协议创建JMX API连接器服务器的提供程序。MBeanServerForwarder 此类的对象实现MBeanServer接口并包装另一个也实现该接口的对象。 -
类摘要 类 描述 JMXConnectionNotification 打开或关闭客户端连接或通知丢失时发出的通知。JMXConnectorFactory 工厂创建JMX API连接器客户端。JMXConnectorServer 每个连接器服务器的超类。JMXConnectorServerFactory 工厂创建JMX API连接器服务器。JMXPrincipal JMX Remote API的远程客户端的标识。JMXServiceURL JMX API连接器服务器的地址。NotificationResult 查询缓冲通知的结果。SubjectDelegationPermission 身份验证标识要求的权限,以代表授权标识执行操作。TargetedNotification A(通知,侦听器ID)对。 -
异常摘要 异常 描述 JMXProviderException 当提供商存在所需协议但由于某种原因无法使用时,JMXConnectorFactory
和JMXConnectorServerFactory
抛出异常。JMXServerErrorException Exception thrown as the result of a remoteMBeanServer
method invocation when anError
is thrown while processing the invocation in the remote MBean server.