当前位置: 首页 > 知识库问答 >
问题:

找不到MBean“jboss.web:type=Manager,path=/,host=localhost”

林冥夜
2023-03-14

我正在尝试访问JBoss v4。2 MBean注册为

jboss.web:type=Manager,path=/,host=localhost

使用以下代码:

ObjectName name = new ObjectName("jboss.web:type=Manager,path=/,host=localhost");
ManagementFactory.getPlatformMBeanServer().getAttribute(name, "activeSessions");

但此代码始终引发以下异常:

javax.management.InstanceNotFoundException : jboss.web:type=Manager,path=/,host=localhost is not registered.

另一方面,我可以使用jmx控制台通过//localhost:8080/jmx控制台/-MBean可用。

通过代码访问同一MBean还需要什么?

共有1个答案

韩博厚
2023-03-14

找到了它...

ObjectName name = new ObjectName("jboss.web:type=Manager,path=/,host=localhost");
this.sessions = new Long((Integer) MBeanServerLocator.locateJBoss().getAttribute(name, "activeSessions"));

我必须找到合适的MBeanServer<代码>MBeanServerLocator。locateJBoss()解决了这个问题。

 类似资料:
  • 问题陈述: 出于“奇怪”的原因,我们对API的所有操作都有不同的“主机”。我们有这样的API: 操作1:获取https://host1:port1/api/resources 如果我们按原样使用Swagger/OpenAPI,就意味着每个操作创建一个Swagger/OpenAPI规范,从而使每个操作都有一个Swagger ui页面,然后需要重新创建一个索引页面来列出API的所有操作:-/这正是我们

  • 我有一个docker映像,它安装了,但是当我试图运行它时,我得到了一个错误: 如果我在交互模式下运行bash,则可用。 我做错了什么? 这是我的Dockerfile:

  • 我有一个运行在Docker容器中的uwsgi服务,我想用它来服务django应用程序。当我在本地运行uwsgi服务时,一切正常,但是从docker容器中我得到消息和,django应用程序显示内部服务器错误。这是我的uwsgi.ini文件。在docker容器中,我使用类似于

  • 在构建JPostal时,我发出了命令: 我得到以下错误: 问题是我已经将java编译器的正确路径添加到环境变量中。事实上,当我在中键入时,它会显示所有选项,如本SO答案中讨论的那样。例如,在命令行中键入会显示正确的版本: 我还按照本主题中的建议设置了< code>JAVA_HOME环境变量。 为什么没有检测到 Java 编译器? 更新1: 三个命令的输出查看当前本地、用户和系统的定义。 本地路径:

  • 在我们的项目中实现MBean(以独立模式部署在JBoss AS 7.1.1上)后,我使用JConsole执行了一些测试并创建了一个“本地进程”连接(使用JBoss PID的连接),这工作正常。可以看到、到达并返回预期值的MBean。但是我无法使用“远程进程”进行连接。 这是JMX子系统配置: 这是套接字配置: 我在那里找到了几种URL使用方法,但我用不同的建议端口(9990959510904447

  • 问题内容: 我有一个安装的docker映像,但是当我尝试运行它时,出现错误: 如果我以交互模式运行bash,则可用。 我究竟做错了什么? 这是我的Dockerfile: 问题答案: 当您将exec格式用于命令(例如,带双引号的JSON数组)时,将在 没有 外壳的 情况下 执行该命令。这意味着大多数环境变量将不存在。 如果您将命令指定为常规字符串(例如),则之后的字符串将使用来执行。 有关更多信息,