struts アプリケーションにSynchronizer Tokenを実装する場合、すべてのフォームを編集してトークンに何らかのタグを追加する必要がありますか?それとも struts によって自動的に行われますか?
2639 次
1 に答える
1
アクションのsaveToken()
メソッドがトークンを生成し、それをセッション スコープに配置すると、html:form
タグがトークンをページに自動的に追加します。
html:form
カスタム タグ ハンドラのコード スニペットを次に示します。
String token = (String) session.getAttribute(Globals.TRANSACTION_TOKEN_KEY);
if (token != null) {
results.append("<input type=\"hidden\" name=\"");
results.append(Constants.TOKEN_KEY);
results.append("\" value=\"");
results.append(token);
if (this.isXhtml()) {
results.append("\" />");
} else {
results.append("\">");
}
}
したがって、Strutshtml:form
タグを使用している場合は、何もする必要がなく、Struts がフィールドの追加を処理します。代わりに従来の HTML フォーム タグを使用する場合は、自分でフィールドを追加する必要があります。
于 2010-02-02T07:37:20.563 に答える