gpt4 book ai didi

jmx - 如何使用自定义 JMX 身份验证

转载 作者:行者123 更新时间:2023-12-01 02:03:32 24 4
gpt4 key购买 nike

我必须根据数据库中的条目对 JMX 客户端进行身份验证。因此,我编写了一个自定义的 JMXAuthenticator 实现。

启动我的应用程序时,我可以通过“本地进程”使用 JConsole 访问 MBean。但是,当我尝试使用 url 'service:jmx:rmi:///jndi/rmi://localhost:10999/jmxrmi' 作为远程进程访问它时,JConsole 显示一条消息,提示“与服务的连接:jmx: rmi:///jndi/rmi://localhost:10999/jmxrmi 没有成功。'

下面是启动 MBeanServer 和 JMXConnectorServer 的服务器端代码。有人知道我做错了什么吗?

提前致谢

托马斯

final MBeanServer mbs = MBeanServerFactory.createMBeanServer("MyDomain");
final HashMap<String, Object> environment = new HashMap<String, Object>();
final JMXAuthenticator authenticator = new JMXAuthenticatorImpl();
environment.put(JMXConnectorServer.AUTHENTICATOR, authenticator);

final JMXServiceURL serviceURL = new JMXServiceURL("rmi", "localhost", 10999);

final JMXConnectorServer connectorServer = JMXConnectorServerFactory.newJMXConnectorServer(serviceURL, environment, mbs);

connectorServer.start();

最佳答案

看来问题是我在创建新的 JMXConnectorServer 之前没有创建 RMI 注册表。

插入

LocateRegistry.createRegistry(port);

在创建 JMXConnectorServer 之前解决了这个问题。

关于jmx - 如何使用自定义 JMX 身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6125498/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com