jboss-service.xml
MBeanを使用してバインドされたサービスクラスのインスタンスを取得しようとしています。
JBoss-Service.xml
BasicThreadPool
コードで使用するを定義しました。これはそれが何であるかですJBOSS-Service.xml
。
<mbean
code="org.jboss.util.threadpool.BasicThreadPool"
name="jboss.system:service=ThreadPool">
<attribute name="Name">JBoss System Threads</attribute>
<attribute name="ThreadGroupName">System Threads</attribute>
<attribute name="KeepAliveTime">60000</attribute>
<attribute name="MaximumPoolSize">10</attribute>
<attribute name="MaximumQueueSize">1000</attribute>
<!-- The behavior of the pool when a task is added and the queue is full.
abort - a RuntimeException is thrown
run - the calling thread executes the task
wait - the calling thread blocks until the queue has room
discard - the task is silently discarded without being run
discardOldest - check to see if a task is about to complete and enque
the new task if possible, else run the task in the calling thread
-->
<attribute name="BlockingMode">run</attribute>
</mbean>
私は以下のように私のコードでこれにアクセスしようとしています、
MBeanServer server = MBeanServerLocator.locateJBoss();
MBeanInfo mbeaninfo = server.getMBeanInfo(new ObjectName("jboss.system:service=ThreadPool"));
これでMBean情報が得られました。BasicThreadPool
MBeanで定義されたオブジェクトのインスタンスが必要です。出来ますか ?
私は方法を知っています。MBean情報からクラス名を取得できます。また、インスタンスを構築するための属性を取得することもできます。それを行うためのより良い方法はありますか?