Struts 1の画面改修を調査する

既存のStruts 1画面について、JSPからAction、業務処理、遷移先まで影響範囲を追う手順。

作成日: 2026-07-28 / 更新日: 2026-07-28

キーワード: 影響調査 / 画面遷移 / テスト観点 / ActionForm / Action / JSP

概要

Struts 1の画面改修では、変更するJSPだけを見ても影響範囲を判断できません。表示条件の値がどこで設定され、どのActionと遷移を通って画面へ届くかを追います。

調査の起点

分かっている点から設定とコードを双方向に辿ります。

JSPからJava側へ追う

1. 送信先を確認する

<html:form action="/userSearch">

actionを手掛かりに、Struts設定の<action path>を探します。

2. JSPが参照する値を確認する

<logic:equal name="userSearchForm" property="mode" value="detail">

確認するのは、Beanの実体とスコープ、プロパティ型、setter、取り得る値、条件が偽の場合に非表示となる範囲です。

3. struts-config.xmlを読む

対応するpathから、Actionクラス、Form Bean、入力検証、遷移先を特定します。

4. ActionFormを読む

入力値の型、初期値、reset()validate()、スコープ、Actionから設定される値を確認します。

5. Actionと業務処理を読む

値の取得、業務処理の呼び出し、属性設定、遷移分岐を確認します。変更と関係しない処理を無制限に読む必要はありません。

Java側からJSPへ追う

  1. どのActionやServiceから呼ばれるか
  2. 結果がrequest、session、ActionFormのどこへ入るか
  3. どのforward名が返るか
  4. struts-config.xmlでどのJSPへ対応するか
  5. JSPのどのタグや式が値を表示するか

同じ定数やメッセージキーが複数画面で使われる場合、1行の変更でも複数画面に影響します。

影響範囲を広げる共有要素

検索結果が多い場合は、「同じ名前」ではなく「同じ実行経路に乗るか」で絞ります。

テスト観点を処理経路から作る

観点確認内容
条件成立対象要素が期待どおり表示される
条件不成立対象要素が表示されない
未設定・nullエラーや意図しない表示がない
入力エラーActionへ進まず入力画面へ戻る場合の表示
画面再表示Formやsessionに古い値が残らない
別の遷移元同じJSPへ別Actionから来た場合も成立する
権限・業務状態表示制御だけで処理が保護されたと誤認していない

テストケースは変更した行だけでなく、その行へ値が届く経路と結果から作ります。

調査結果の残し方

/userSearch.do
  → struts-config.xml: /userSearch
  → UserSearchForm.mode
  → UserSearchAction.execute()
  → forward: success
  → user/result.jsp
  → logic:equalでmodeを判定

この形なら、なぜ各ファイルをテスト対象にしたかを説明できます。

注意点

参考文献

更新履歴

  • 初版作成

関連項目

このページを参照しているページ