[Seasar-user:18303] Re: [SAStruts][S2Csv]S2Csvの結果をResponseUtil.downloadに直接渡す方法について

山田 祐己 [E-MAIL ADDRESS DELETED]
2009年 8月 17日 (月) 17:44:48 JST


小林様

お世話になります。山田です。
小林様のエッセンス、大変参考になりました。

上手くダウンロードできそうです。
有難う御座います。

--
山田 祐己(Yuki Yamada)
E-Mail [E-MAIL ADDRESS DELETED]



Koichi Kobayashi さんは書きました:
> 小林 (koichik) です.
>
> Date:    Mon, 17 Aug 2009 16:17:03 +0900
> From:    山田 祐己 <[E-MAIL ADDRESS DELETED]>
> To:      [E-MAIL ADDRESS DELETED]
> Subject: [Seasar-user:18300] [SAStruts][S2Csv]S2Csvの結果をResponseUtil.downloadに直接渡す方法について
>
>   
>> そこで確認なのですが、SAStrutsにはファイルのダウンロードで
>> ResponseUtil.downloadメソッドが有りますが、
>> このメソッドにS2CSVWriteCtrlのwriteの結果を
>> (出来れば、一旦ファイルに吐き出さずに、そのまま結果を)
>> 渡したいのですが、どの様にすると良いでしょうか。
>>     
>
> ByteArrayOutputStream os = new ByteArrayOutputStream(1024);
> OutputStreamWriter writer = new OutputStreamWriter(os, "UTF-8");
> S2CSVWriteCtrl<XxxCsv> csvWriter = 
>     csvCtrlFactory.getWriteController(XxxCsv.class, writer);
> csvWriter.write(xxxCsv);
> writer.close();
>
> byte[] data = os.toByteArray();
> ByteArrayInputStream is = new ByteArrayInputStream(data);
> ResponseUtil.download("xxx", is, data.length());
>
>
> メーラで書いただけなのでコンパイルも通らないかも
> しれませんが,おおむねこんな感じでいいのでは.
>
>
>   






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