此规则会检测对 javax.management.ObjectName
构造函数的所有调用,该构造函数可能特定于应用程序服务器,并且将需要迁移以便应用程序在
WebSphere Application Server 上运行。
例如,将标记下列调用:
| new ObjectName("jboss.admin:service=DeploymentFileRepository") new ObjectName("com.bea:Name=RuntimeService") new ObjectName("com.acme:name=toon,type=com.acme.toon.management.ToonBeanCounter") ... String name = "foo:bar"; ... new ObjectName(name) |
请注意,仅需要迁移专门由除了 WebSphere Application Server 之外的应用程序服务器提供的 MBean。 此规则将仍然标记非特定于 WebSphere 的 MBean,其中包括可能兼容的 MBean,例如定制 MBean。 此外,将标记所有将非最终变量作为自变量使用的调用,因为在运行时,工具没有足够信息来确定它们的值。 在 WebSphere Application Server 上进行使用之前,请检查标记的所有 MBean 的兼容性。
例如,将不标记以下调用,因为它们包含特定于 WebSphere 的名称。
| static final String NAME = "com.ibm.websphere.testgrid:type=TestService"; ... new ObjectName("WebSphere:type=Server") new ObjectName(NAME) |
要获取 WebSphere 提供的 MBean 列表,请参阅 WebSphere Application Server Public MBean Interfaces。
要获取 Liberty 提供的 MBean 列表,请参阅 Liberty:List of provided MBeans。
有关如何设置定制 MBean 的更多信息,请参阅 Extending the WebSphere Application Server administrative system with custom MBeans。