@Documented @Target(value=METHOD) @Retention(value=RUNTIME) @Interceptor(value=OnDoubleSubmission.Impl.class) @Published public @interface OnDoubleSubmission
Interceptor。
 業務アクションハンドラのメソッドに付与することで、二重サブミット(同一リクエストの二重送信)のチェックを行う。
本インターセプタを使用するためには、jspでのn:formタグによるトークン設定が必要である。
      <n:form useToken="true">
     <n:submit type="button" value="Submit" uri="/XXXXX" allowDoubleSubmission="false">
     </n:form>
 
 本インターセプタは、業務アクションハンドラに次のように実装する。
 
      @OnDoubleSubmission(path = "XXX.jsp")
      @OnError(type = ApplicationException.class, path = "forward://XXX.html")
     public HttpResponse handle(HttpRequest req, ExecutionContext ctx) {
         // 省略
     }
 | 修飾子とタイプ | 任意要素と説明 | 
|---|---|
java.lang.String | 
messageId
二重サブミットと判定した場合の遷移先画面に表示するエラーメッセージに使用するメッセージIDを返す。 
 | 
java.lang.String | 
path
二重サブミットと判定した場合の遷移先のリソースパスを返す。 
 | 
int | 
statusCode
二重サブミットと判定した場合のレスポンスステータスを返す。 
 | 
public abstract java.lang.String path
NullPointerExceptionが発生する。public abstract java.lang.String messageId
public abstract int statusCode
BasicDoubleSubmissionHandlerのフィールドに定義されている400を返す。