赤外線通信できなくなった。
PCからケータイに送ろうとすると「ファイルは次の操作中にエラーが発生したため送信されませんでした。操作: ワイヤレスリンクがほかのコンピュータにファイルデータを送信しているときデータが無効です。」と表示されるようになった。どうやらXP SP2のバグのようだ。なんか書いてある回避策も効かないし、困った。しかたないのでザウルス経由で転送。
なんか登載メモリーが多い時にハイバーネーションに失敗するバグもずっと直らないし、XPっていまいち。
ロギング難しい
アプリケーションサーバに配備された複数のアプリケーションで、それぞれ別の設定でロギングしたいとする。これはロギングライブラリを共通のクラスパスに入れないで、アプリケーションそれぞれのwarファイルに入れれば良さそうだ。
でも、特にオープンソース系のアプリケーションサーバでは、アプリケーションサーバ自体も同じロギングライブラリを使っていたりする。
SRV.9.7.2によると"It is recommended also that the application class loader be implemented so that classes and resources packaged within the WAR are loaded in preference to classes and resources residing in container-wide library JARs."なので、共通クラスパスと、WARだったらWAR内を優先すべきということになるのかな。サーバが立ち上がってすぐの状態で、まだアプリを読み込んでいない状態なら、当然共通クラスパスから読むだろうし、アプリケーションが上がって来たら、今度はWARから読むだろう。別々のクラスローダから読まれたクラス間には互換性が無いので(Java言語仕様書4.3.4)、これは例外の発生を招くと。
結局アプリケーションごとにロギングの設定を変えたいというのは無理という感じになる。でもまぁパッケージ名で設定変えられるんだし、いいじゃんという気もするけど。その場合はWARにはロギングライブラリを入れないで、共通側のみを使えばいいのかな。でもそうするとそのWARは、特定のロギングライブラリが使われているサーバ限定ってことになっちゃうなぁ。
あるいは、全く発想を変えて各ログメソッド呼び出しごとに、コンテキストを判断して設定を切り替えるようにする。でも遅くなりそう。











