S2JMS開発記 - requestスコープの検討

最後に残していた、S2JMSContainer の request スコープに対する検討に入ります。

S2JMSContainer には、アプリケーションサーバ以外(S2JMS-Server)上で動作するので、いわゆるリクエストやセッションといった概念はありません。

しかし、JMSからのメッセージ受信も一種のリクエストとして捉えることができ、その間だけ有効なコンポーネントのスコープ(=request スコープ)が必要となるのです。

かくして、S2JMSContainer 上から S2Container にリクエストスコープで登録したオコンポーネントを取得できるように実装する方法を考えなければいけません。ついでに、受信したJMSメッセージもリクエストスコープで登録しておいて、S2JMSContainer 上のアプリケーションが JMSのメッセージにも直接触れるようにします。

S2JmxJavelin使ってみました

試してみよう、思いつつずいぶん時間がかかってしまっていた(ごめん、やむやむ(id:mayamasaki)・・・)S2JmxJavelinですが、やっと動きました。

気になったことをいくつかフィードバックします。

  • S2JmxJavelinInterceptor の設定で、HttpPort を 0 にしているにも関わらず、mx4j のライブラリを入れていないと起動できない。
  • mx4jのJarファイルはたくさんあるので、どのJarファイルが必要か、明記した方がよい。
  • マニュアルでHTTP経由で見る場合と、S2JmxJavelinViewer で見る場合の設定を分けて説明した方が分かりやすい。
  • Javaシステムプロパティで、-Dcom.sun.management.jmxremote などを設定すると、eclipse上からTomcatが停止できなくなる(TomcatPluginの問題?)