【问题标题】:javax.management.openmbean.CompositeData Nestingjavax.management.openmbean.CompositeData 嵌套
【发布时间】:2014-04-16 08:35:00
【问题描述】:

我们可以在 CompositeData 中包含 SimpleType 值,例如 SimpleType.INTEGER、SimpleType.STRING。我想要嵌套复合类型,即包含另一个复合类型的复合类型。

我正在使用下面的代码来执行此操作。但它不会在 JConsole 中显示 CompositeData。它向我显示的是 CompositeData 的元数据,而不是真实数据。

请告诉我解决问题的方法。

CompositeType type = new CompositeType("My Type", "My Type", new String[]{"item1", "item2"}, new String[]{"item1", "item2"}, new OpenType[]{SimpleType.STRING, SimpleType.STRING});
CompositeData data = new CompositeDataSupport(type, new String[]{"item1", "item2"}, new String[]{"item value 1", "item value 2"});

CompositeType compType = new CompositeType("compData", "compData", new String[]{"compItem1"}, new String[]{"compItem1"}, new OpenType[]{type});
CompositeData compData = new CompositeDataSupport(compType, new String[]{"compItem1"}, new Object[]{data});

【问题讨论】:

    标签: jmx mbeans


    【解决方案1】:

    您是否尝试过 Java Mission Control(随 7u40+ 提供)而不是 JConsole。我相信它更适合显示更复杂的数据。

    【讨论】:

      【解决方案2】:

      使用 MXBean 处理复合类型要容易得多。如果可以的话,你应该从那里开始。您可以从方法和属性中返回更复杂的对象;只要它们遵循 MXBean 规则,您就可以免费获得所有复杂类型的处理。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-07-10
        • 1970-01-01
        • 1970-01-01
        • 2021-12-23
        • 1970-01-01
        • 2019-05-21
        相关资源
        最近更新 更多