スタート 2 用の新しいインターフェイス (validationAware など) を追加することを考えていました。インターフェイスのメソッドは、リクエスト内に存在する必要がある特定のパラメーターを設定するメソッドになります。
たとえば、次の Interface を考えてみましょう。
public interface MyCustomInterfaceForActions {
/**
* Set a specific parameter into the request
*/
public void setMyParameter1InRequest(HttpServletRequest request, String myParameter);
/**
* Sets another specific parameter into the request
*/
public void setSecondParamInRequest(HttpServletRequest request, String myParameter);
}
問題は、そのインターフェイスを実装する各アクションの「実行」メソッドでメソッド「setParameterInRequest」を「呼び出す」必要がないことです。
また、特定のパラメーターをリクエストに設定するアクションを「強制」したいと考えています。
アクションのすべての「実行」メソッド内で「設定」メソッドを呼び出さなくても、それを行う方法はありますか? たとえば、Struts の「actionExecutor」を拡張し (その名前を作成しました)、その動作を変更して、クラスが「MyCustomInterfaceForActions」を実装しているかどうかを確認し、そうであれば「set」メソッドを呼び出すことはできますか?
または、インターフェースが実装されているかどうかを確認し、メソッドを実装することなく、とにかくそれらのパラメーターをリクエストに追加するだけですか?