私は、完了までに最大10秒かかる可能性のある巨大なテーブル(7 mil +レコード)からリストをフェッチするリクエストを持つアプリケーションを持っています。ボタン付きJBoss Seamキャンセルリクエスト
cancel
ボタンを使用して、前の要求が完了するのを待つのではなく、要求をキャンセルする方法はありますか。現在、ユーザーがcancel
ボタン(ページのリダイレクト)をクリックしようとすると、ConcurrentRequestTimeoutException
がスローされます。
500 ms
に設定されているため、このタイムアウトを増やすことができましたが、ユーザーは以前の要求が完了するまで待つ必要があります。以前のリクエストをキャンセルして直ちにリダイレクトしてほしい。
これは可能ですか?
ボタンのコードは:のcommandButtonとpage.xmlファイルにリダイレクトする前に会話を終了:
<s:button id="cancelEdit" value="Cancel" propagation="end"
view="/reference/ProviderList.xhtml">
</s:button>
私も時間を使用してみました。
申し訳ありませんが、これらの詳細を追加するのを忘れていました。私は自分の投稿を更新しました。しかし、はい、上記のボタンの伝播とpage.xml before-redirectで終わる会話を終了しようとしました。私は何もせずに終わりを使用していることが重要ではないと思いますか? – Mike
会話を終了(伝播=終了)してから放置する(伝播=なし)には大きな違いがあります。エンディングは、単に長い会話を通常の会話にします(同じ会話IDを再利用する)。それを残すと、会話はバックグラウンドに残り、新しい会話が開始されます。ところで、私は伝播をテストしました=あなたのユースケースには無し、完全に動作します。会話を終了しても問題は解決しません。 – dcernahoschi
アドバイスをいただきありがとうございます。それは今働く。 – Mike