@Documented @Target(value=METHOD) @Retention(value=RUNTIME) @Interceptor(value=nablarch.common.web.token.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) { // 省略 }
修飾子とタイプ | 任意要素と説明 |
---|---|
String |
messageId
二重サブミットと判定した場合の遷移先画面に表示するエラーメッセージに使用するメッセージIDを返す。
|
String |
path
二重サブミットと判定した場合の遷移先のリソースパスを返す。
|
int |
statusCode
二重サブミットと判定した場合のレスポンスステータスを返す。
|
public abstract String path
NullPointerException
が発生する。public abstract String messageId