My MBeanを書こう計画 (3)

MBean開発もあっけなく成功してしまいました.Standard MBean用のインタフェースとその実装クラスを作ったら,後はXMLに2行程度書けば終了.その後無事JMXコンソールからHelloWorldメソッドの呼び出しもできました.JBossのXMBeanとHot-Deployが強力であるが故ですね.まあ,そんな予感はしていたんですけどね(笑)

そういうことなのでこれだけだと本当に記事を作るネタ不足なのでNotificationを使ってMBean同士の連携もやってみたいと思います.これもあっけなく終わったりして.


ところでふと思ったんですが,JBossのXMBeanてModel MBeanの拡張ですよね.でもMBean開発者からみるとXMBeanを利用するのってStandard MBeanの開発とほとんど同じになっているのではないでしょうか.というかStandard MBeanであっても本来はMBean Serverへregistするコードをどこかに書かねばならないはずなので,Standard MBeanよりももっと簡単にしていると.

つまり何が言いたいのかというと,JBossがXMBeanを実装した理由はMBean開発の低コスト化を強力に図るため,という理解でよろしいのでしょうかということです.


Schedulerに呼び出されたオブジェクトからMBeanへNotificationを発するサンプルっぽいのを書くも想定通りに動かず.JBoss 4.0 Official GuideにはNotificationについてはそれほど詳しい話は無し.DTDの各要素の説明はあるんだけどね.コードが見たい.JMX教科書(JMX Managing J2EE with Java Management Extentions, Marc FleuryおよびJuha Lindfors著)のやり方だとXMBean無視になっちゃうし.

やっぱこうやってつまづかないと燃えないよね.

ソースをgrepしてみたら,この辺にNotificationのサンプル実装があるっぽいことが判明.

./cluster/src/examples/org/jboss/ha/jmx/examples/HANotificationBroadcasterClientExample.java
./cluster/src/examples/org/jboss/ha/jmx/examples/HANotificationBroadcasterExampleMBean.java
./cluster/src/examples/org/jboss/ha/jmx/examples/HANotificationBroadcasterExample.java
./cluster/src/examples/org/jboss/ha/jmx/examples/HANotificationBroadcasterClientExampleMBean.java

続きは明日.