S2ブートストラップ?

今回の案件で、WEBアプリのクラスを使ってバッチ起動でスタンドアローンプログラムを動かしたいなと思ったんだけど、起動するのにクラスパスだのなんだの大量のjarを書くのが面倒、かつ、事前処理、成功時処理、エラー時処理の3つあるのでjarが変わるたんびにメンテしてられないなこれは、と。

で、S2RMI-Serverを改良して作ってみました。改良って云っても殆どコピーみたいなもんですが。仮名・mf-bootstrap。mfはうちの会社の頭文字。

S2RMI-Serverから待機ループを削除して、引数に「--component」と「--method」を追加、起動するServiceクラスとメソッドを指定する。そのメソッドの引数は今回必要なかったので対象外。指定された文字列でコンポーネントとメソッドを取得してinvoke、と。

いやー出来ましたねぇ。スタンドアローンなのでtomcatのlibをクラスパスに追加しなきゃだめだったけど。あとWEB-INF/classesにdiconがある場合はclassesも追加しなきゃいけないんですね。よく判ってないので遺憾。

勉強になりました。面白かった。感謝感謝。