JMX考察
簡単なところで、JMX RIのHtmlAdaptorServerを利用していろいろしてみてるがなかなか面白いかも。
で、commons ModelerなるMBean作成ツールがあるってことで早速使ってみた。
・・・すげぇ楽だ
わざわざ〜MBeanってInterface作らなくてもいいのね。
public class Test { private String _message = "test"; public void setMessage(String message) { _message = message; } public String getMessage() { _message = message; } public void printMessage() { System.out.println(_message); } }
ってクラスをMBeanとして登録するのに、
Register register = Register.getRegister(null, null); register.registerComponent( new Test(), new ObjectName("Test:name=Test"), null);
追記:
register.registerComponentの第二引数がString版もあるのね。
単にObjectNameを作らなくて本来ObjectNameの引数に渡す文字列を直接書いてもいけるってだけ。
これだけでいいんだ。。。
Modelerが内部的に
MbeansDescriptorsIntrospectionSource
ってのを使ってるのでこいつを使って直接MBeanを作成することも可能
その場合は、
MBeanServer server = MBeanServerFactory.createMBeanServer(); MbeansDescriptorsIntrospectionSource ds = new MbeansDescriptorsintrospectionSource(); ManagedBean mBean = ds.createManagedBean( null, null, Test.class, null); server.registerMBean(mBean.createMbean, new ObjectName("Test:name=Test"));
これでOK
MX4Jも使いたいんだけど、なぜかHttpAdaptorがうまく使えない。
厳密にはXSLTProcessorがまずいみたいなんだけど。追跡中ですが、結構根がふかそう。。。
まぁ何かしらわかればまた書くかもということで。