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がまずいみたいなんだけど。追跡中ですが、結構根がふかそう。。。
まぁ何かしらわかればまた書くかもということで。