2017-07-19 7 views
1

私は次のことを呼ぶとき、それはそれはCompositeDataSupportからThreadInfoに変換することはできませんと言い、予期しない動作が()

しかし
ObjectName objName = ManagementFactory.getThreadMXBean().getObjectName() ; 


    ThreadMXBean proxy = JMX.newMBeanProxy(MBeanServerConnection, objName, ThreadMXBean.class); 

としてリモートJVMのためのThreadMXBeanプロキシを取得します。

ThreadInfo tInfo = proxy. getThreadInfo(true, true); 

プロキシがすべての変換を処理してはいけませんか?さらに、私はgetThreadInfo()を効果的にThreadMXBeanと呼んでいます。

答えて

1

ThreadMXBeanはMXBeanです。あなたのコードはJMX#newMBeanProxyと呼ばれています。このメソッドから返されたプロキシは、MXBeanのプロパティを処理できません。代わりに、JMX#newMXBeanFactoryを使用して、MXBeansのプロパティを処理できるプロキシを取得します。

ThreadMXBean proxy = JMX.newMXBeanProxy(MBeanServerConnection, objName, ThreadMXBean.class);