[Seasar-user:7915] Re: ファイルダウンロードでのナビゲーションについて

[E-MAIL ADDRESS DELETED]
2007年 5月 30日 (水) 10:27:16 JST


六です。便乗で質問なのですが。

ファイルダウンロードを既に描画済みのページのボタンのクリックで
実現する場合はdoDownloadなどのメソッドの中で
responseComplete()を呼び出せばよいという事になると思いますが、
リンクで実現する場合はどうすればよいでしょうか。

取り敢えず以下の2つの方法で出来ないかなあと。

(1)HTMLを持たないダウンロード専用Pageクラス(またはActionクラス)
を呼び出してinitialize()内でダウンロード処理を書く

(2)リンク内に描画済みPageクラスの特定のメソッドを呼び出す
クエリパラメータを書く

Strutsのノリで(1)をちょっと試してみたんですが、対応するHTMLがないと
エラーが出てしまいました。

(2)の方法は調べてみたんですが、
これといった解決策が見つかりませんでした。

ボタンクリックによるダウンロードにすればよいのですが、
テーブルの1行ごとにダウンロード機能をつけねばならず
ボタンがずらっと並ぶのがお客様から「ちょっとやだ」と
いう御要望を戴きまして、なるべくならリンクにしたいのです。

軽い御要望なので、いよいよとなればボタンにしようとは
思うのですが。

宜しく御願いします。

07/05/30 に Shinpei Ohtani<[E-MAIL ADDRESS DELETED]> さんは書きました:
> 大谷です。
>
> > しつこくて申し訳ありませんが、回答を
> > 確認すると、ダウンロードのみが対象と
> > 取れますが、その認識に間違いはないですか?
>
> いえ、ダウンロードのみが対象というわけではありません。
> JSFとして、responseComplete()をユーザが呼び出すと
> 既にレンダリングは終わったものとして画面遷移はしません。
>
>
> 07/05/30 に [E-MAIL ADDRESS DELETED]<[E-MAIL ADDRESS DELETED]> さんは書きました:
> > 原田です。回答ありがとうございます。
> >
> > しつこくて申し訳ありませんが、回答を
> > 確認すると、ダウンロードのみが対象と
> > 取れますが、その認識に間違いはないですか?
> >
> >
> >
> > >大谷です。
> > >
> > >> 再度質問で申し訳ありませんが
> > >> >JSFの仕様の一部としてTeedaが判断しています。
> > >> について、条件を教えていただけませんか?
> > >>
> > >> ダウンロードのみではなく、HttpResponseに何かを
> > >> 書いた(情報を与えた)ときに判断条件になると言うことであれば
> > >> システムとして考慮の必要もあるためです。
> > >> お手数ですがよろしくお願いいたします。
> > >
> > >FacesContextのresponseCompleteで判断しています。
> > >
> > >public void doDownload() {
> > >  //ダウンロードロジック
> > >  //JSFへレスポンス出力が完了したことを通知する
> > >  this.facesContext.responseComplete();
> > >}
> > >
> > >このような感じになります。
> > >宜しくお願いします。
> > >
> > >07/05/29 に [E-MAIL ADDRESS DELETED]<[E-MAIL ADDRESS DELETED]> さんは書きました:
> > >> 原田です。早急な回答ありがとうございます。
> > >>
> > >> 再度質問で申し訳ありませんが
> > >> >JSFの仕様の一部としてTeedaが判断しています。
> > >> について、条件を教えていただけませんか?
> > >>
> > >> ダウンロードのみではなく、HttpResponseに何かを
> > >> 書いた(情報を与えた)ときに判断条件になると言うことであれば
> > >> システムとして考慮の必要もあるためです。
> > >> お手数ですがよろしくお願いいたします。
> > >>
> > >>
> > >>
> > >> >大谷です。
> > >> >
> > >> >> この際に、ナビゲーション文字列となる、リターン値には
> > >> >> 何も設定せず(アクションメソッドをvoidで定義)に、ダウンロード
> > >> >> 処理だけを実施するようにしています。
> > >> >>
> > >> >> そこで質問なのですが、ダウンロード処理では、Responseに対して
> > >> >> ダウンロードファイル情報を書き込むため、画面遷移が行えないと
> > >> >> 私が認識しており、処理もこのようにしたのですが、これに問題が
> > >> >> あるでしょうか?
> > >> >
> > >> >問題ありません。
> > >> >ダウンロードの場合、画面遷移は行えません。
> > >> >
> > >> >> また、ファイルダウンロード処理で、ナビゲーションを記述した場合
> > >> >> それを無視しているのは、FacesServletなのか、それともブラウザ
> > >> >> なのかも判ればご教授ください。
> > >> >
> > >> >FacesServletという言い方が正確かといわれるとちがうのですが、
> > >> >JSFの仕様の一部としてTeedaが判断しています。
> > >> >宜しくお願いします。
> > >> >
> > >> >07/05/28 に [E-MAIL ADDRESS DELETED]<[E-MAIL ADDRESS DELETED]> さんは書きました:
> > >> >> 原田と申します。お世話になっております。
> > >> >>
> > >> >> ファイルダウンロードの機能について確認させてください。
> > >> >>
> > >> >> ファイルダウンロードを行う場合、アクションメソッド内で
> > >> >> FacesConfigよりHttpResponseを取得し、そのResponseに対して
> > >> >> ダウンロードファイルへの書込みを行っております。
> > >> >>
> > >> >> この際に、ナビゲーション文字列となる、リターン値には
> > >> >> 何も設定せず(アクションメソッドをvoidで定義)に、ダウンロード
> > >> >> 処理だけを実施するようにしています。
> > >> >>
> > >> >> そこで質問なのですが、ダウンロード処理では、Responseに対して
> > >> >> ダウンロードファイル情報を書き込むため、画面遷移が行えないと
> > >> >> 私が認識しており、処理もこのようにしたのですが、これに問題が
> > >> >> あるでしょうか?
> > >> >>
> > >> >> また、ファイルダウンロード処理で、ナビゲーションを記述した場合
> > >> >> それを無視しているのは、FacesServletなのか、それともブラウザ
> > >> >> なのかも判ればご教授ください。
> > >> >>
> > >> >> 以上
> > >> >> _______________________________________________
> > >> >> Seasar-user mailing list
> > >> >> [E-MAIL ADDRESS DELETED]
> > >> >> https://ml.seasar.org/mailman/listinfo/seasar-user
> > >> >>
> > >> >
> > >> >
> > >> >--
> > >> >=============================
> > >> >Shinpei Ohtani
> > >> >[E-MAIL ADDRESS DELETED]
> > >> >=============================
> > >> >_______________________________________________
> > >> >Seasar-user mailing list
> > >> >[E-MAIL ADDRESS DELETED]
> > >> >https://ml.seasar.org/mailman/listinfo/seasar-user
> > >> >
> > >> _______________________________________________
> > >> Seasar-user mailing list
> > >> [E-MAIL ADDRESS DELETED]
> > >> https://ml.seasar.org/mailman/listinfo/seasar-user
> > >>
> > >
> > >
> > >--
> > >=============================
> > >Shinpei Ohtani
> > >[E-MAIL ADDRESS DELETED]
> > >=============================
> > >_______________________________________________
> > >Seasar-user mailing list
> > >[E-MAIL ADDRESS DELETED]
> > >https://ml.seasar.org/mailman/listinfo/seasar-user
> > >
> > _______________________________________________
> > Seasar-user mailing list
> > [E-MAIL ADDRESS DELETED]
> > https://ml.seasar.org/mailman/listinfo/seasar-user
> >
>
>
> --
> =============================
> Shinpei Ohtani
> [E-MAIL ADDRESS DELETED]
> =============================
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>



Seasar-user メーリングリストの案内