如何在Tomcat中启用JMXMP?

2023-11-24

我已经下载了 JMXMP 扩展并将它们安装在Tomcat的lib目录中。现在,我怎样才能让它使用它们,即让 Tomcat 接受 JMXMP 连接?

  • Oracle 的示例展示了如何使用代码来完成此操作,为此我必须编写自己的侦听器,我宁愿保留它作为最后的手段。
  • Tomcat的JMX监听器似乎不包括 JMXMP 支持。

好吧,我编写了自己的 JMXMP Tomcat 监听器。随意使用:

package webersg.tomcat;

import java.lang.management.ManagementFactory;

import javax.management.remote.JMXConnectorServer;
import javax.management.remote.JMXConnectorServerFactory;
import javax.management.remote.JMXServiceURL;

import org.apache.catalina.Lifecycle;
import org.apache.catalina.LifecycleEvent;
import org.apache.catalina.LifecycleListener;

public class JMXMPLifecycleListener implements LifecycleListener {

    private int port = 5555;

    private JMXConnectorServer cs;

    @Override
    public void lifecycleEvent(LifecycleEvent event) {

        try {

            // START
            if (Lifecycle.START_EVENT == event.getType()) {

                System.out.println("Start JMXMP on port " + port);

                cs = JMXConnectorServerFactory.newJMXConnectorServer(
                        new JMXServiceURL("jmxmp", "0.0.0.0", port),
                        null,
                        ManagementFactory.getPlatformMBeanServer()
                );
                cs.start();

                System.out.println("Started JMXMP");

            }

            // STOP
            else if (Lifecycle.STOP_EVENT == event.getType()) {

                System.out.println("Stop JMXMP");

                cs.stop();
            }

        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }

}

因此,经过一天对这个问题的绞尽脑汁之后,我现在可以在我的应用程序上使用 VisualVM。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在Tomcat中启用JMXMP? 的相关文章

  • Hashmap并发问题

    我有一个哈希图 出于速度原因 我希望不需要锁定 假设我不介意过时的数据 同时更新它和访问它会导致任何问题吗 我的访问是获取 而不是迭代 删除是更新的一部分 是的 这会导致重大问题 一个例子是向散列映射添加值时可能发生的情况 这可能会导致表重
  • JavaFX 图像未在舞台中显示

    我尝试了很多次 尝试了很多方法 但都无法让自己的形象在舞台上如我所愿 我认为这可能与java寻找资源的路径有关 但我不确定 因为我刚刚开始使用视觉库 在本例中为JavaFX 这是我的目录结构 MyProject assets img myI
  • jvm 次要版本与编译器次要版本

    当运行使用具有相同主要版本但次要版本高于 JVM 的 JDK 编译的类时 JVM 会抛出异常吗 JDK 版本并不重要 类文件格式版本 http blogs oracle com darcy entry source target class
  • 防止 Spring Boot 注册 Spring Security 过滤器之一

    我想禁用安全链中的 Spring Security 过滤器之一 我已经看到了防止 Spring Boot 注册 servlet 过滤器 https stackoverflow com questions 28421966 prevent s
  • 哪个 Swing 布局管理器可以获得我想要的布局?

    我正在尝试按照这个模型制作一个基本的登录菜单 我决定将整个菜单放入 JPanel 中 以便在连接成功后我可以切换到另一个面板 所以我决定使用 Borderlayout 将标题放在北区 将连接按钮放在南区 我将边框布局的中心本身设置为面板 我
  • Spring3/Hibernate3/TestNG:有些测试给出 LazyInitializationException,有些则没有

    前言 我在单元测试中遇到了 LazyInitializationException 的问题 而且我很难理解它 正如你从我的问题中看到的那样Spring 中的数据库会话 https stackoverflow com questions 13
  • 将过滤器添加到 Eclipse 中的 Project Explorer

    我想向 Project Explorer 添加一个新的过滤器 以向用户隐藏一些在 Eclipse RCP 应用程序中自动创建的项目 到目前为止我已经找到了两个扩展点 org eclipse ui ide resourceFilters 允许
  • 正则表达式获取字符串中的第一个数字和其他字符

    我是正则表达式的新手 想知道如何才能只获取字符串中的第一个数字 例如100 2011 10 20 14 28 55 在这种情况下 我希望它返回100 但该数字也可以更短或更长 我在想类似的事情 0 9 但它单独获取每个数字 100 2001
  • Java Microsoft Excel API [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 发生错误。请参阅日志文件 - eclipse juno

    每当我启动 Eclipse Juno 时 都会出现错误 发生错误 请查看日志文件 C Program Files eclipse configuration 1362989254411 log 有的网站说卸载jdk重新安装 我这样做了 但没
  • 创建正则表达式匹配数组

    在Java中 我试图将所有正则表达式匹配返回到一个数组 但似乎您只能检查模式是否匹配某些内容 布尔值 如何使用正则表达式匹配来形成与给定字符串中的正则表达式匹配的所有字符串的数组 4城堡的回答 https stackoverflow com
  • JSch中如何设置文件类型和文件传输模式?

    我使用 Apache Common NetFTPClient并设置了我的ftpClient在上传文件之前使用如下所示的方法 ftpClient setFileType FTP BINARY FILE TYPE ftpClient setFi
  • 通过 AJP 将 REMOTE_USER 转发到 tomcat(例如用于 shibboleth)

    今天我刚刚遇到了以下问题 1 我将apache配置为基本身份验证 需要有效用户 这有效 2 我进一步配置 apache 将某些路径 在我的例子中为 idp 的请求转发到 tomcat servlet shibboleth IDP 结果是 s
  • 使用 JAD 反编译 java - 限制

    我正在尝试使用 Java 中的 JAD 反编译几个 jar 文件 我也尝试过 JD GUI 但运气更差 但出现了很多错误 一种类型 易于修复 似乎是内部类 但我也发现了这段代码 static int SWITCH TABLE atp com
  • 公共方法与公共 API

    在干净的代码书中 有一个观点是 公共 API 中的 Javadocs 同样 Effective java 一书也有这样的内容 项目 56 为所有公开的 API 元素编写文档注释 所以这就是我的问题 所有公共方法都被视为公共 API 吗 它们
  • 为什么这个私人浮动字段变为零?

    我有一些奇怪的行为 我很难向自己解释 称为 textureScale 的浮点字段变为零 如果某些代码正在更改该值 则可以解释这一点 然而 我希望能够通过将其设置为 私有最终浮点 来导致构建失败 或者至少是运行时异常 那么无论更改该值都将失败
  • 对于当前月份和日期但年份不同的日期,经过的月份计算未给出正确的结果

    我正在尝试计算自特定日期以来经过的月份 该函数工作正常 尽管如果我将今天的日期与过去的不同年份放在一起 它会给我一个月的差异 不到一个月 假设对于所有日期 该函数都运行良好 除了 如果今天是 2014 03 06 YYYY MM DD 并且
  • 摩尔斯电码 至 英语

    我现在的问题是让 摩尔斯电码转英语 正常工作 将英语转换为莫尔斯电码的第一部分工作正常 我知道以前已经有人问过这个问题 但我不知道我做错了什么 我知道我需要在某个地方进行拆分 但我只是不确定将其放在代码中的何处 现在 莫尔斯电码到英语的部分
  • 每次我们调用浏览器时,在 selenium 中使用 driver.manage().window().maximize() 是否好?

    We use driver manage window maximize 最大化浏览器 我在网上看到一些使用的例子driver manage window maximize 尽管不需要最大化浏览器 例如 gmail 登录 我还看到使用 se
  • 为什么范围为“provided”的依赖项会隐藏 Maven 中的传递依赖项?

    我的 Maven 项目中有三个模块 这稍微简化了 model包含JPA注释的实体类 坚持实例化一个实体管理器并调用它的方法 应用创建类的实例model 设置一些值并将它们传递给坚持 model and 坚持显然取决于javax persis

随机推荐

  • 避免seaborn箱线图中被群图覆盖的重复图例

    在下面基于seaborn的图中 我正在制作一个由群图覆盖的箱形图 两者都是色调的子集 有什么办法可以让它们在图例中不重复两次吗 这是我的代码 ax sns boxplot x name xaxis y name col hue hue da
  • TelephonyManager 对于 IMEI 号码返回 null:什么可能导致此情况?

    我正在开发一个 Android 应用程序 并且正在得到null使用时返回 IMEI 号码TelophonyManager 多款华为手机都出现这种情况 均为 Ascend Y530 这些手机都有 SIM 卡 其他方面似乎都运行正常 我的印象是
  • 如何调试 Rust 中的内存问题?

    我希望这个问题不要太开放 我遇到了 Rust 的内存问题 我得到了通话中出现 内存不足 next on an Iterator特质对象 我不确定如何调试它 印刷品只是把我带到了失败发生的地方 我对其他工具不太熟悉 例如ltrace 所以虽然
  • Spark.python.worker.memory 与 Spark.executor.memory 有何关系?

    这张图对于不同 YARN 和 Spark 内存相关设置之间的关系非常清楚 除了涉及到spark python worker memory 如何spark python worker memory适合这个内存模型吗 Python 进程是否受以
  • Zoho mail 显示 Node Js 中的 535 身份验证失败

    我正在使用 Node Express 和 MongoDB 创建一个应用程序 用户创建成功后 想要发送给用户的邮件 我正在使用 zohomail 并且可以使用这些用户名和密码在线登录 zohomail 但是当我尝试发送邮件时出现错误 code
  • 在 Django 中覆盖外部应用程序的模板

    我想覆盖外部应用程序的模板 allauth 安装在站点包中 不幸的是我读到的建议没有起作用 我将以下内容添加到我的settings py PROJECT ROOT os path normpath os path dirname os pa
  • 在 O(n) 时间内将堆转换为 BST?

    我认为我知道答案并且最小复杂度是O nlogn 但是有什么方法可以让我从堆中创建二叉搜索树O n 复杂 没有算法可以在 O n 时间内从堆构建 BST 原因是给定 n 个元素 您可以在 O n 时间内从它们构建一个堆 如果您有一组值的 BS
  • 有没有办法强制 std::array 完全初始化

    我在用std array
  • 为什么C++中允许从外部修改常量对象的指针成员变量的内存?

    我一直试图理解 当我在 C 中编写一个带有常量参数和该对象内部的指针变量的函数时 const 标志并不能保护底层内存免受修改 例如 在以下位置执行以下操作是完全合法的operator 类的函数称为X class X public X ope
  • 使用 StructureMap 实现策略模式的最佳方法

    我的 Web 应用程序在业务逻辑和表示逻辑方面有一些细微的变化 具体取决于登录的用户类型 似乎通过根据用户类型注入不同的具体类来获得变化非常适合 DI 所以我想知道我应该使用 StructureMap 的哪些功能来实现这一目标 或者我是否偏
  • 如何在 Blade 模板中包含子视图?

    我正在尝试使用 laravel 建立一个网站 但我确实在文档未涵盖的基本内容上遇到了麻烦 在这种情况下 我看到它说我可以通过使用将一个视图包含在另一个视图中 include view name 什么是视图名称 它保存在哪里 我尝试创建一个文
  • 在 Django 中缓存站点地图

    我使用 Django 的默认站点地图应用程序实现了一个简单的站点地图类 由于执行时间较长 我添加了手动缓存 class ShortReviewsSitemap Sitemap changefreq hourly priority 0 7 d
  • 会话变量的替代品是什么? [复制]

    这个问题在这里已经有答案了 有哪些限制会话变量开发大型网络应用程序 还有什么是最好的会话变量的替代方案 请向我提供会话变量的替代方案 要了解不使用会话的优点 您必须了解会话的工作原理 在默认设置下 会话由用户浏览器中设置的 cookie 来
  • iPad 兼容 HTML Wysiwyg 编辑器 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 有没有兼容 iPad 的所见即所得 HTML 编辑器 Edit 我正在寻找的是可以在网络应用程序上运行的东西 而不是本机 iPad 应用程序 我认为
  • 将嵌套 JSON 反序列化为 C# 对象

    我从如下所示的 API 返回 JSON Items Item322A prop1 string prop2 string prop3 1 prop4 false prop1 string prop2 string prop3 0 prop4
  • Firebase 本地服务器

    我刚刚发现 Firebase 如果我不想要付费帐户 有没有办法在我自己的服务器上运行它 或者如果这不可能 Firebase 是开源的 所以我们可以用它们来托管 Firebase 是一项专有服务 不是开源或公共源代码 具有免费层和多个付费层
  • 在spyder中使用系统环境变量

    我有一个用Python 2编码的程序 我需要运行它 我想通过anaconda软件在spyder中运行它 问题是 要通过终端运行程序 我必须事先在系统环境变量中添加两个新变量 计算机中的一个文件夹 其中包含一些必需的包 包含所需许可证的 IP
  • 如何在 React SPA 的浏览器中保留 Auth0 登录状态

    目前 当我创建路由时 我检查 Auth0 方法 isAuthenticated 以确定是否返回受保护的页面或重定向到登录 但是 这种状态仅存在于内存中 并且在浏览器刷新时不会将用户保留在其页面上 我想这样做 这是一个 React RR4 R
  • 使用一组素数按升序生成整数

    我有一组素数 我必须仅使用这些素数因子按升序生成整数 例如 如果集合是p 2 5 那么我的整数应该是 1 2 4 5 8 10 16 20 25 有没有高效的算法来解决这个问题呢 删除号码并重新插入它的所有倍数 由集合中的素数 进入优先级队
  • 如何在Tomcat中启用JMXMP?

    我已经下载了 JMXMP 扩展并将它们安装在Tomcat的lib目录中 现在 我怎样才能让它使用它们 即让 Tomcat 接受 JMXMP 连接 Oracle 的示例展示了如何使用代码来完成此操作 为此我必须编写自己的侦听器 我宁愿保留它作