goo blog サービス終了のお知らせ 

be with you 共に生きる

共に生きるあらゆるものたちのこと

Struts2.5.5とLog4j2

2016年12月19日 21時56分33秒 | 日記
この2日間はStruts周りの削除されたクラスやDeprecatedの対応をしてきた。

今日は、再び、OSSらしい思いやりのなさに再会してしまった。

それはFilterに組み込むべき org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilterだ。

StrutsPrepareAndExecuteFilterをデリゲートしてクラスを作成しているのだが、
なぜWeb.xmlで標準的な実装を選ばなかったかは今となっては不明ではあるが、
このStrutsPrepareAndExecuteFilterの幾つかのメソッド中では、Deprecatedされたものがある。
InitOperationなどの中でDeprecatedされたメソッドコールをしている。これでは使えない。
結局ロジックを読んで、別途を決めた。

Log4jとのブリッジ的なクラスが提供されているが、結局、Filterクラスを独自にカストマイズする時には無力でしかない。
つまりStruts2.5.5はLog4j2が必須なのだ。勿論、2.5.5のアナウンスにはMUSTとあるが。。

割り切れない。Log4j2のJarをクラスライブラリに入れれば、Commons.Loggingではなく、皆Log4j2となるより道がない。
Log出力クラスが局所的であるからよいが、検索でCommons.logging使用箇所を全てLog4j2に直して、
かつ、LoggerもManagerがらGetする形に直してゆく。まー半日程度ではあるが、本当にガッカリ。

移行はNoValueAddでしかないのに、作業項目が多すぎる!!!!

最新の画像もっと見る

コメントを投稿

サービス終了に伴い、10月1日にコメント投稿機能を終了させていただく予定です。
ブログ作成者から承認されるまでコメントは反映されません。