2009-01-01から1年間の記事一覧

続 SAStrutsをStruts形式のURLでも動くようにする

前回エントリの続き。 S2ModuleConfigを継承して、もう少しコードを整理してみる。まずはFilter 2009/10/6 追記 前回エントリの修正に合わせて修正しました。 public class MyRoutingFilter extends RoutingFilter { public static final String INCLUDE_PAT…

SAStrutsをStruts形式のURLでも動くようにする

SAStrutsではURLがきれいなURLになっている。これは今時必須の機能だと思うが、既存のシステムをStrutsからSAStrutsに置き換えるような場合は、既存のURLを変更しにくいことも多いと思う。 社内システム等閉じた範囲で使用するシステムであれば、URL変更の調…

HOT deployでのClassCastException対策その2

現時点(Seasar2.4.34まで)のHOT deployでは、HttpSessionを直接使用して、リクエストをまたいでHttpSessionに格納されたオブジェクトを取得してキャストすると、ClassCastExceptionが発生する。例.XxxAction#indexでセッションにXxxDtoを格納して、XxxAction…

システム日付を変更する方法

システムテスト等で、システム日付を任意に設定したいことはよくあると思う。でも、テストサーバーのOSの日付を変更するのは、なかなか難しいことが多い。ファイルのタイムスタンプがぐちゃぐちゃになって管理上問題になるだけでなく、アプリケーションで問…

HOT deployでのClassCastException対策

Seasar2.4.xのHOT deployでは、filterやutil、entityといったのようなSMART deploy対象外のクラスから、actionやservice、dao、dtoといったSMART deploy対象のクラスを参照すると、ClassCastExceptionが発生する。この対策を考えてみた。 ちなみに、COOL dep…

Actionの共通処理をどこに実装するか?

Struts(1.2.x以下)からSAStrutsへの置き換えをするときに、Actionの共通前処理をどこに実装するかで迷った。 ここで言う共通前処理とは、個々のActionを実行する前に共通で実行したいような処理のこと。 Strutsでは、org.apache.struts.actions.DispatchActi…

Javaメモリ、GCチューニングとそれにまつわるトラブル対応手順まとめ

GC周りでトラブルシューティングした際の経験や、Web等で調べたことをまとめてみる。 前提 ・JVMは、Sun Javaを想定。(他は使ったことないです。。。) ・Sun Java 1.5-1.6を想定。 目標 マイナーGC、Full GCそれぞれが頻発することなく、かつそれぞれの実行…