[Seasar-user:2598] Re: S2JSFでのファイルダウンロード

fang mingxiang fangmingxiang
2005年 9月 22日 (木) 16:51:06 JST


米林さんこんにちは。

早速の返信ありがとうございます。 
説明がたりなくて申し訳ございません。

補足:

開発環境:
 ・MyFaces1.1
 ・TOMCAT5
シナリオ:
 画面表示用のBeanにファイルデータがUploadedFileオブジェクトとして保持してい
ます。
 画面上にファイル名をクリックしてファイルダウンロードする処理です。
画面処理:
     <a  m:action="#{xxxxAction.downloadFile}">
       <span m:value="#{bean.tenpuFileName}">添付ファイル名</span>
       <span m:inject="f:param" m:name="fileData" 
m:value="#{bean.tenpuFileData}"/>
     </a>

下記のメソッドを実行して何にも(エラーも)起こさなかったで終了しました。

>米林です
>
> > 方と申します。
> > S2JSFを使用していてファイルダウンロード機能を実現するために
> > ボタンのアクションクラスに下記のメッソドを実装し、実行して正常終了するよ
うで
> > すが、
> > ファイルダウンロードのダイアログも出ないのに終了しました。
> > なにか分かる方がいらっしゃいましたらご教授願います。
>→終了したというのは、エラーか何か起こったのでしょうか?
> もう少し詳細な情報があると解決につながりやすいと思います。
>
> また response オブジェクトを取得する際には
> response オブジェクトの setter を用意すればOKです。
> http://www.seasar.org/DIContainer.html#Request
> こちらを参考になさってください。
>
>
> > public String downloadFile() {
> >
> > // TODO 自動生成されたメソッド・スタブ
> > ExternalContext context =
> > FacesContext.getCurrentInstance().getExternalContext();
> > HttpServletResponse response = (HttpServletResponse)
> > context.getResponse();
> > response.setContentType("any mime type");
> > try {
> > ServletOutputStream out = response.getOutputStream();
> > out.write(fileData.getBytes());
> > out.flush();
> > out.close();
> > FacesContext.getCurrentInstance().responseComplete();
> > }
> > catch (IOException ex) {
> > ex.printStackTrace();
> > }
> > return "success";
> > }
>
>_______________________________________________
>Seasar-user mailing list
>[E-MAIL ADDRESS DELETED]
>http://lists.sourceforge.jp/mailman/listinfo/seasar-user





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