【问题标题】:How to activate callByValue for MBean Calls (JBoss)如何为 MBean 调用激活 callByValue (JBoss)
【发布时间】:2011-03-31 14:28:36
【问题描述】:

我有以下问题:

两个战争被部署到一个 tomcat 5.1 应用服务器。

War1 注册了一些 MBean,这些 MBean 将返回 War1 中定义的类型的对象

War2 尝试访问 MBean,但在尝试将检索到的对象强制转换为预期的对象时获取 ClassCastException。 Object 的类在 War2 的 Jar 中提供。

我发现传递给war2的Object是由war1的classLoader加载的。为了解决这个问题,我想按值调用 MBean 方法,而不是像现在这样按引用调用。

谁能告诉我如何在 JBoss 中更改它?

【问题讨论】:

    标签: jboss jmx


    【解决方案1】:

    将来自该 MBean 的公共数据类放入您放置的 jar 中 - 在包含两个 .war 文件的耳朵文件中(如果它们应该放在耳朵里) - server/lib/ 如果你只有战争而没有耳朵

    在这两种情况下,您都应该从 war 文件中删除这些类,以便类加载器委托可以在“更广泛的范围”中找到它们

    【讨论】:

    • 感谢您的回答。不幸的是,将 lib 放在 server/lib 目录中对我来说不是一个选择(公司的东西)。我可能会考虑创建一个包含两场战争的 EAR。我认为没有办法告诉 Jboss 它不应该直接调用 mbean?在 JBoss4 中,MBean 被远程调用。
    猜你喜欢
    • 2010-10-14
    • 1970-01-01
    • 2011-04-18
    • 1970-01-01
    • 1970-01-01
    • 2011-04-19
    • 1970-01-01
    • 2019-07-23
    • 1970-01-01
    相关资源
    最近更新 更多