- - PR -
二重送信対応
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2007-10-07 21:06
OS:windows
フレームワーク:struts1.2 トランザクショントークンの機能は使わずに 二重送信対応を考えいます <input value="ログイン" type="submit" onclick="this.disabled = true;"> この書き方ですと、ボタンは非活性になるのですが 次画面に飛んでくれません よろしくお願いします |
|
投稿日時: 2007-10-07 21:47
正常動作するときに下記記述方法ですと。
JavaScript OFF のときに二重送信が可能ですが、考えていますか? <input value="ログイン" type="submit" onclick="this.disabled = true;"> その質問内容ではだれも理解はできません |
|
投稿日時: 2007-10-08 18:15
<form>のonsubmitで同様のコードをやってはどうでしょうか。
|
|
投稿日時: 2007-10-08 20:08
ありすさん、Anthyhimeさん
ご回答ありがとうございます イントラネットの世界で使うものですので java-scriptは必須の条件にして onsubmitで対応いたします ありがとうございました |
|
投稿日時: 2007-10-10 18:33
遷移後のページでリロードした場合は二重送信になりますが、どうしますか?
トークンを使わないとある程度しか予防できないことはわかっているんですよね? |
|
投稿日時: 2007-10-11 23:34
ほかにも、このようなクライアントサイドだけでやるやりかただと、もしネットワークの調子が悪かったりして一度 submit が失敗してしまうと、もう送信ボタンが押せなくなってしまいますので、復旧できなくなってしまうという問題があります。
送信ボタン以外にもなんらかの戻れるボタンも設けておかないと、ユーザーに不親切なアプリケーションになってしまいます。 -- unibon {B73D0144-CD2A-11DA-8E06-0050DA15BC86} |
|
投稿日時: 2007-10-12 01:39
実はStrutsのトークンの仕組み自体も、
クラスタ環境では無力なので、過信はよくないです。 なので、 ・誤操作でも連続で送信しにくい ・連続で送信されてもデータモデル上問題にならない という仕組みでカバーするのが丁度いいなと最近思うようになりました。 ユーザが誤操作で連続送信してしまうのは、PRGパターンである程度防げますし、 同一キーで2度データが送られてきたら、1回目はインサート2回目はアップデートするとか。 この辺は絶対解がないので、議論になりやすいですね。 |
1