243 lines
16 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="header">
<h1 class="title" title="Package">Package javax.management.remote</h1>
<div class="docSummary">
<div class="block">
用于远程访问JMX MBean服务器的接口。
</div>
</div>
<p>See: <a href="#package.description">描述</a></p>
</div><div class="contentContainer">
<ul class="blockList">
<li class="blockList">
<table border="0" cellpadding="3" cellspacing="0" class="typeSummary" summary="Interface Summary table, listing interfaces, and an explanation">
<caption>
<span>接口摘要</span>
<span class="tabEnd"> </span>
</caption>
<tbody>
<tr>
<th class="colFirst" scope="col">接口</th>
<th class="colLast" scope="col">描述</th>
</tr>
</tbody>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../javax/management/remote/JMXAddressable.html" title="interface in javax.management.remote">JMXAddressable</a></td>
<td class="colLast">
<div class="block">
由具有
<code>JMXServiceURL</code>地址的对象实现。
</div> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../javax/management/remote/JMXAuthenticator.html" title="interface in javax.management.remote">JMXAuthenticator</a></td>
<td class="colLast">
<div class="block">
用于定义远程凭据如何转换为JAAS主题的界面。
</div> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../javax/management/remote/JMXConnector.html" title="interface in javax.management.remote">JMXConnector</a></td>
<td class="colLast">
<div class="block">
JMX API连接器的客户端。
</div> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../javax/management/remote/JMXConnectorProvider.html" title="interface in javax.management.remote">JMXConnectorProvider</a></td>
<td class="colLast">
<div class="block">
使用给定协议创建JMX API连接器客户端的提供程序。
</div> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../javax/management/remote/JMXConnectorServerMBean.html" title="interface in javax.management.remote">JMXConnectorServerMBean</a></td>
<td class="colLast">
<div class="block">
连接器服务器的MBean接口。
</div> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../javax/management/remote/JMXConnectorServerProvider.html" title="interface in javax.management.remote">JMXConnectorServerProvider</a></td>
<td class="colLast">
<div class="block">
使用给定协议创建JMX API连接器服务器的提供程序。
</div> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../javax/management/remote/MBeanServerForwarder.html" title="interface in javax.management.remote">MBeanServerForwarder</a></td>
<td class="colLast">
<div class="block">
此类的一个对象实现MBeanServer接口并包装另一个也实现该接口的对象。
</div> </td>
</tr>
</tbody>
</table> </li>
<li class="blockList">
<table border="0" cellpadding="3" cellspacing="0" class="typeSummary" summary="Class Summary table, listing classes, and an explanation">
<caption>
<span>类摘要</span>
<span class="tabEnd"> </span>
</caption>
<tbody>
<tr>
<th class="colFirst" scope="col"></th>
<th class="colLast" scope="col">描述</th>
</tr>
</tbody>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../javax/management/remote/JMXConnectionNotification.html" title="class in javax.management.remote">JMXConnectionNotification</a></td>
<td class="colLast">
<div class="block">
客户端连接打开或关闭或通知丢失时发出的通知。
</div> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../javax/management/remote/JMXConnectorFactory.html" title="class in javax.management.remote">JMXConnectorFactory</a></td>
<td class="colLast">
<div class="block">
工厂创建JMX API连接器客户端。
</div> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../javax/management/remote/JMXConnectorServer.html" title="class in javax.management.remote">JMXConnectorServer</a></td>
<td class="colLast">
<div class="block">
每个连接器服务器的超类。
</div> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../javax/management/remote/JMXConnectorServerFactory.html" title="class in javax.management.remote">JMXConnectorServerFactory</a></td>
<td class="colLast">
<div class="block">
工厂创建JMX API连接器服务器。
</div> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../javax/management/remote/JMXPrincipal.html" title="class in javax.management.remote">JMXPrincipal</a></td>
<td class="colLast">
<div class="block">
JMX Remote API的远程客户端的身份。
</div> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../javax/management/remote/JMXServiceURL.html" title="class in javax.management.remote">JMXServiceURL</a></td>
<td class="colLast">
<div class="block">
JMX API连接器服务器的地址。
</div> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../javax/management/remote/NotificationResult.html" title="class in javax.management.remote">NotificationResult</a></td>
<td class="colLast">
<div class="block">
对缓冲通知的查询结果。
</div> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../javax/management/remote/SubjectDelegationPermission.html" title="class in javax.management.remote">SubjectDelegationPermission</a></td>
<td class="colLast">
<div class="block">
认证身份所需的权限代表授权身份执行操作。
</div> </td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../javax/management/remote/TargetedNotification.html" title="class in javax.management.remote">TargetedNotification</a></td>
<td class="colLast">
<div class="block">
A通知听众ID对。
</div> </td>
</tr>
</tbody>
</table> </li>
<li class="blockList">
<table border="0" cellpadding="3" cellspacing="0" class="typeSummary" summary="Exception Summary table, listing exceptions, and an explanation">
<caption>
<span>异常摘要</span>
<span class="tabEnd"> </span>
</caption>
<tbody>
<tr>
<th class="colFirst" scope="col">异常</th>
<th class="colLast" scope="col">描述</th>
</tr>
</tbody>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../javax/management/remote/JMXProviderException.html" title="class in javax.management.remote">JMXProviderException</a></td>
<td class="colLast">
<div class="block">
<span>例外由抛出<a href="../../../javax/management/remote/JMXConnectorFactory.html" title="javax.management.remote中的类"><code>JMXConnectorFactory</code></a><a href="../../../javax/management/remote/JMXConnectorServerFactory.html" title="javax.management.remote中的类"><code>JMXConnectorServerFactory</code></a>当存在所需的协议提供者,但不能用于由于某些原因。</span>
</div> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../javax/management/remote/JMXServerErrorException.html" title="class in javax.management.remote">JMXServerErrorException</a></td>
<td class="colLast">
<div class="block">
<span>当处理远程MBean服务器中的<code>Error</code>时抛出一个<code>Error</code>时,由于远程<a href="../../../javax/management/MBeanServer.html" title="javax.management中的接口"><code>MBeanServer</code></a>方法调用的结果抛出异常。</span>
</div> </td>
</tr>
</tbody>
</table> </li>
</ul>
<a name="package.description">
<!-- --> </a>
<h2 title="Package javax.management.remote Description">Package javax.management.remote Description</h2>
<div class="block">
<p> <span>用于远程访问JMX MBean服务器的接口。</span> <span>该包定义了使JMX MBean服务器可远程管理的基本界面。</span> <span>该功能的规范由<a href="../../../../technotes/guides/jmx/JMX_1_4_specification.pdf">JMX Specification, version 1.4</a> PDF文档的第III部分完成。</span> </p>
<p> <span>JMX规范定义<b>的连接器</b>的概念。</span> <span>连接器连接到JMX API MBean服务器并使其可以访问远程Java客户端。</span> <span>连接器的客户端导出与MBean服务器基本相同的界面特别是<a href="../../../javax/management/MBeanServerConnection.html" title="javax.management中的接口"><code>MBeanServerConnection</code></a>接口。</span> </p>
<p> <span>连接器使得MBean服务器可以通过给定的协议远程访问。</span> <span>JMX Remote API允许使用不同类型的连接器</span> </p>
<ul>
<li> <span>JMX Remote API定义了一个标准连接器<b>RMI Connector</b> 它通过RMI提供对MBeanServer的远程访问。</span> </li>
<li> <span>JMX Remote API还定义了一个名为<b>JMXMP Connector</b>的可选连接<b>器,</b>实现了JMX消息协议JMXMP</span> <span>由于它是可选的,它不属于此捆绑包(见下面的注释)。</span> </li>
<li> <span>用户定义的连接器协议也可以使用<a href="../../../javax/management/remote/JMXConnectorFactory.html" title="javax.management.remote中的类"><code>JMXConnectorFactory</code></a>和可选的通用连接器(不包括此捆绑包的一部分,请参见下面的注释)。</span> <p></p></li>
</ul>
<p> <span><u>注意</u> :实现<em>JMX Remote API</em>可选部分的可选软件包不包括在<em>Java SE平台中</em>但可从<em>JMX Remote API <a href="http://java.sun.com/products/JavaManagement/download.html">Reference Implementation获得</a></em></span> </p>
<h3> <span>连接器地址</span> </h3>
<p> <span>通常,连接器服务器具有由类别<a href="../../../javax/management/remote/JMXServiceURL.html" title="javax.management.remote中的类"><code>JMXServiceURL</code></a>表示的地址。</span> <span>RMI连接器的地址可能如下所示</span> </p>
<pre> <span>service:jmx:rmi:///jndi/rmi://myhost:1099/myname</span> </pre>
<p> <span>在这个<code>JMXServiceURL</code> ,第一个<code>rmi:</code>指定了RMI连接器而第二个<code>rmi:</code>指定了RMI连接器服务器已存储其存根的RMI注册表。</span> </p>
<p> <span>上面的例子只显示一种形式的地址。</span> <span>RMI连接器的地址可以采用多种形式如包<code><a href="../../../javax/management/remote/rmi/package-summary.html"><code>javax.management.remote.rmi</code></a></code>的文档中所<code><a href="../../../javax/management/remote/rmi/package-summary.html"><code>javax.management.remote.rmi</code></a></code></span> </p>
<h3> <span>创建连接器服务器</span> </h3>
<p> <span>一种连接器,服务器是通过构造的子类的实例创建<a href="../../../javax/management/remote/JMXConnectorServer.html" title="javax.management.remote中的类"><code>JMXConnectorServer</code></a></span> <span>通常,此实例是使用方法<a href="../../../javax/management/remote/JMXConnectorServerFactory.html#newJMXConnectorServer-javax.management.remote.JMXServiceURL-java.util.Map-javax.management.MBeanServer-"><code>JMXConnectorServerFactory.newJMXConnectorServer</code></a>创建的。</span> </p>
<p> <span>通常连接器服务器通过在MBean服务器中注册或通过在创建连接器服务器时提供MBean服务器作为参数与MBean服务器相关联。</span> </p>
<h3> <span>创建连接器客户端</span> </h3>
<p> <span>一种连接器,客户机通常是通过提供所创建的<code>JMXServiceURL</code>连接器服务器的连接到至<a href="../../../javax/management/remote/JMXConnectorFactory.html#connect-javax.management.remote.JMXServiceURL-"><code>JMXConnectorFactory.connect</code></a>方法。</span> </p>
<p> <span>为更专门的用途,连接器客户端可以通过直接实例化一个实现一个类创建<a href="../../../javax/management/remote/JMXConnector.html" title="javax.management.remote中的接口"><code>JMXConnector</code></a>接口,例如类<a href="../../../javax/management/remote/rmi/RMIConnector.html" title="javax.management.remote.rmi中的类"><code>RMIConnector</code></a></span> </p>
<h3> <span>其他客户端或服务器参数</span> </h3>
<p> <span>创建连接器客户端或服务器时,可以提供定义其他参数的类型为<a href="../../../java/util/Map.html" title="java.util中的接口"><code>Map</code></a>的对象。</span> <span>此Map中的每个条目都有一个键它是一个字符串和一个相关联的值其类型适用于该键。</span> <span>由JMX Remote API定义的标准键都以字符串“ <code>jmx.remote.</code> ”开头。</span> <span>文档<em>JMX Remote API</em>列出了这些标准密钥。</span> </p>
<h3> <span>连接标识符</span> </h3>
<p> <span>连接器服务器打开的每个连接都有一个字符串标识符,称为<b>连接ID</b></span> <span>该标识符出现在由连接器服务器发出的<a href="../../../javax/management/remote/JMXConnectionNotification.html" title="javax.management.remote中的类"><code>JMXConnectionNotification</code></a>事件中,在由<a href="../../../javax/management/remote/JMXConnectorServerMBean.html#getConnectionIds--"><code>getConnectionIds()</code></a>返回的列表中,以及由客户端的<a href="../../../javax/management/remote/JMXConnector.html#getConnectionId--"><code>getConnectionId()</code></a>方法返回的值。</span> </p>
<p> <span>例如连接ID可以如下所示</span> </p>
<pre> <span>rmi://192.18.1.9 username 1</span> </pre>
<p> <span>遵循此约定的连接ID的正式语法如下使用<em>Java语言规范</em>第2.4节中的语法符号):</span> </p>
<pre> <span><em>ConnectionId:</em>
<em>Protocol</em> : <em>ClientAddress<sub>opt</sub></em> Space <em>ClientId<sub>opt</sub></em> Space <em>ArbitraryText</em>
<em>ClientAddress:</em>
// <em>HostAddress</em> <em>ClientPort<sub>opt</sub></em>
<em>ClientPort</em>
: <em>HostPort</em></span> </pre>
<p> <span><code><em>Protocol</em></code>是一个将被<code>JMXConnectorFactory</code>识别的<a href="../../../javax/management/remote/JMXConnectorFactory.html" title="javax.management.remote中的类">协议</a></span> </p>
<p> <span><code><em>ClientAddress</em></code>是连接客户端的地址和端口,如果可以确定,否则没有。</span> <span><code><em>HostAddress</em></code>是客户端从数字或DNS形式连接的主机的Internet地址。</span> <span>数字IPv6地址用方括号<code>[]</code><code>[]</code></span> <span><code><em>HostPort</em></code>是客户端连接的十进制端口号。</span> </p>
<p> <span><code><em>ClientId</em></code>是客户端实体的标识,通常是由<a href="../../../javax/management/remote/JMXPrincipal.html#getName--"><code>JMXPrincipal.getName()</code></a>返回的<a href="../../../javax/management/remote/JMXPrincipal.html#getName--">字符串</a></span> <span>此字符串不能包含空格。</span> </p>
<p> <span><code><em>ArbitraryText</em></code>是创建客户端标识时连接器服务器添加的任何其他文本。</span> <span>至少必须将此连接ID与此连接器服务器当前打开的任何其他连接的ID区分开来。</span> </p>
</div>
<dl>
<dt>
<span class="simpleTagLabel">从以下版本开始:</span>
</dt>
<dd>
1.5
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../../technotes/guides/jmx/"> Java Platform documentation on JMX technology</a>, in particular the
<a href="../../../../technotes/guides/jmx/JMX_1_4_specification.pdf"> JMX Specification, version 1.4</a>
</dd>
</dl>
</div>