Struts

エンジニアの心

Struts1.3.5を使ったアプリケーションの初期化

以下の2種類の方法がある。 ServletContextListenerを使うStrutsのPluginを使う PluginだとStrutsに依存した処理ができる。
エンジニアの心

Struts1.3.5のvalidation.xml

validator-rules.xml jarに含まれたらしい。validatorの定義が書かれている。 validation.xml Validatorの設定ファイル。 XML宣言 <!DOCTYPE form-validation PUBLIC "-//Apache Software Foundation//DTD Commons...
エンジニアの心

Struts1.3.5のRequiredValidator

必須チェック。空白だけをいれるとこのチェックにひっかかる。 サンプル <field property="loginID" depends="required"> <msg name="required" key="errors.required" /> <arg name="required" key="ログインID" re...
エンジニアの心

Struts1.3.5のMaskValidator

requiredとmaskだけ使えばほかいらないんじゃないかな?と思うわけだ。 サンプル <field property="loginID" depends="required,mask"> <msg name="required" key="errors.required" /> <msg name="mask" key=...
エンジニアの心

Struts1.3.5のIntRangeValidator

範囲内のint値。 サンプル <field property="loginID" depends="intRange"> <msg name="intRange" key="errors.intrange" /> <arg name="intRange" key="年齢" resource="false" /> ...
エンジニアの心

Struts1.3.5でValidatorを使う

StrutsではValidate機能が付いている。 Validatorは以下のチェックができる。 クライアントサイドのエラーチェックサーバーサイドのエラーチェック クライアントサイドではJavascriptを用いてチェックする。クライアントサイドJavascriptチェックを使うと、サーバ間通信が減るので、パフォーマンスを抑えることができる。(多少だと思うけ...
エンジニアの心

Struts1.3.5でTilesを使ってみる

左にメニューがあって、右にコンテンツ・・・というようなレイアウトを使う場合、tilesを使えば、画面の構成要素の定義ができる。また、継承を使って、画面の一部分だけ変更する・・・という処理も可能。 インストール pluginとしてstruts-config.xmlに記述する。 <plug-in className="org.apache...
エンジニアの心

Struts1.3.5のログ

Struts自体がcommons-loggingを使っている。これを制御するためには設定ファイルを用意してやる必要がある。デフォルトでは設定ファイルがないので、Webサーバの起動時にWARNが出力される。多分、クラスパスの通っている場所にcommons-logging.propertiesをおくとかでいけるはず。 尚、開発時はStrutのログを出力したほうが...
エンジニアの心

Struts1.3.5でLookupDispatchActionを使ったディスパッチ

DispatchActionとは異なり、メッセージリソースのキーからディスパッチを行ってくれる。 使い方 LookupDispatchActionを継承したActionクラスを作成。getKeyMethodMapをオーバーライドする。 public class LoginAction extends LookupDispatchAction { pri...
エンジニアの心

Struts1.3.5でDispatchActionを使ったディスパッチ

「org.apache.struts.actions.DispatchAction」を使う。 このクラスの特徴は、struts-config.xmlにディスパッチ情報を記述できること。これによって、すっきりーすっきりーする。 ActionはActionServletとビジネスロジックとをつなぐアダプタクラス。Actionクラスごとにビジネスロジックをわける...
エンジニアの心

Struts1.3.5でActionの自力ディスパッチ

Webアプリケーションは1ページに1機能というのが一般的だと思うが、その1機能の中に複数の処理があることが多い。 例えば、一覧画面にデータのいちらんを表示して、修正ボタンと削除ボタンをデータごとに表示する。修正ボタンが押された場合は、修正画面に移動してFormに修正するデータをセットし、削除ボタンが押された場合は、そのデータ自体を削除したい。 こういうことを...
エンジニアの心

Struts1.3.5のActionFormクラス

ctionFormのresetでリセットできる。ただ、これはチェックボックスの初期化問題などに使うメソッドとして推奨されている。 参考>
エンジニアの心

Struts1.3.5でリクエストをフォワードする

画面遷移だけを実現する方法。 Strutsには遷移する(フォワードする)だけのクラスが存在していた。それがForwardActionクラス。 struts-config.xmlのforward属性を使う場合 以下のようにActionを定義してあげる。 <action path="/tologin" forward="/login.jsp" /> ...
エンジニアの心

Struts1.3.5のActionクラス

ActionはHTTPリクエストの内容とそのリクエストを処理するために実行されるべきビジネスロジックとの間のアダプタクラスです。 コントローラ(ActionServlet)はリクエストに適切なActionを選択して(必要に応じて)インスタンスを生成し、performメソッドを呼び出します。 コントローラは同時に発生した複数のリクエストに対して同一のインスタン...
エンジニアの心

Struts1.3.5インストール

Struts1.3.5Javadoc インストール 「」からダウンロード。libフォルダのjarファイルを /WEB-INF/lib などにコピー。web.xmlに以下を記述。 <servlet> <servlet-name>action</servlet-name> <servlet-class> ...
エンジニアの心

Struts1.1からの移行

1.2へ移行 1.3へ移行 参考リンク セキュアなStrutsシリアライズ
エンジニアの心

Struts1.3.5でのシリアライズ

Strutsで注意したいシリアライズについて。 Sessionに入れたオブジェクトはメモリからディスクに書き出される可能性がある。StrutsならばActionFormを継承して作ったクラスが該当する。よって、Serializableをimplementsしたほうがよい。 参考:ユーファームさんのコーディングの落とし穴 ActionForm...
タイトルとURLをコピーしました