- - PR -
ファイルエクスポート時にクライアントに出力されるダイアログの、キャンセルボタンのイベントを取りたい
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-05-18 21:28
sekiと申します。
responseヘッダーにapplication/octet-stream-dummyを指定して、 HTTPの機能でクライアントにファイルをエクスポートさせる処理を実装しております。 クライアントが実際にファイルを自分のPCにダウンロードしてダイアログ の閉じるボタンを押したイベントをServlet(サーバ側で)取ってから、 サーバ側で作成したファイルを削除したいと考えております。 クライアントが途中で、ダイアログのキャンセルボタンを押下した場合などは ファイルを削除しないようにしたいので、クライアント側が行ったダイアログの イベントをServlet(サーバ側で)取れれば良いのですが、果たして可能なのでしょうか? デバッグしてみると、Servletはクライアントにエクスポートした時点で (response.getWriter()してファイル内容を書き出してflushした時点) 処理を終了しています。 やりたい事は、Servletでクライアントにファイルをエクスポートさせた後に、 クライアントがダイアログで保存 → エクスポートファイルを削除する クライアントがダイアログでキャンセル → エクスポートファイルを削除しない という事なのですが、ダイアログのイベントを取れないのであれば何か他の方法で 実装されている方とかはおられないでしょうか? _________________ |
|
投稿日時: 2005-05-18 21:40
HTTPで実現する限り、希望されている処理は不可能です。保存ダイアログが表示されている
時点でクライアントとサーバの通信は終了していますので、クライアント側がどのような 処理をしたかをサーバ側が感知することはできません。あきらめてレスポンスが終了した 時点でファイルを消すか、バッチプログラムで一定時間経過したファイルを消すとかの 対処が必要になります。 |
|
投稿日時: 2005-05-18 22:38
ukさん:
大変参考になりました。 誠にありがとうございました。 _________________ |
1