在 JMX 代理中注册 MBean


这是位于“管理”菜单下面的上下文操作(只有选定了 JMX 代理才能启用该操作)执行的内容。您可以通过以下菜单来访问“管理”菜单:

此操作的适用性


只有选定了 JMX 代理,才能应用此操作。JMX 代理类是通过 JMX 代理向导生成的类
将使用在平台 MBeanServer 中对 MBean 执行以下操作所需的代码来更新 JMX 代理 init 方法:
可以多次调用此操作来注册多个 MBean。

使用“实例化并注册 MBean”操作

  1. 从“管理”菜单中,选择“实例化并注册 MBean...”。
  2. 将显示一个弹出式窗口。
  3. 已选定了“注册现有的 MBean”。
  4. 可以单击“浏览...”按钮,从当前的项目中选择一个 MBean。也可以在文本字段中直接输入 Mbean 类名。
  5. 输入有效的 MBean 类后,"ObjectName" 文本字段将处于活动状态。此时提供了缺省的 ObjectName。缺省 ObjectName 的计算方法如下所示:
  6. 可以随意添加任何键/值对。缺省 ObjectName 计算非常适于命名“单一的”MBean。如果要注册多个相同类型的 MBean,您至少应该添加一个键来避免出现命名冲突。
  7. 现在,您可以选择一个 MBean 构造函数。
  8. 完成后,请单击“确定”。
  9. 将在编辑器中装入 JMX 代理源代码。
  10. 转至编辑方法以可视化生成的代码。
  11. 如果不需要更新生成的代码(没有为 MBean 构造函数提供任何参数),则可以立即编译、运行和可视化在代理中活动的 MBean。只需单击“运行”>“使用 JConsole 运行主项目...”,或者单击其关联的工具栏图标。将自动处理编译、执行和可视化操作。

更新生成的代码

如果 MBean 在构造时需要某些参数,则需要使用这些参数来更新生成的代码。

  1. 在代理源文件中,请转至 init() 方法。
  2. 为 MBean 构造函数提供所需的参数。在下面的提取中,MBean 构造函数需要一个字符串。

//TODO update Status(String) constructor parameters with valid values.

getMBeanServer().registerMBean(
    new Status("OK message"),
    new ObjectName("foo.bar.com:type=Status"));


法律声明