DWRでファイルのアップロード


書きかけを完成させておきます。


とりあえず、必要なもの。
commons-fileupload-1.2.1.jar:
http://commons.apache.org/downloads/download_fileupload.cgi
commons-io-1.1.jar:
http://mirrors.ibiblio.org/pub/mirrors/maven2/commons-io/commons-io/1.1/
dwr
http://directwebremoting.org/dwr/downloads/index.html
(ちなみに、こっちも参照-RC1の場合[http://d.hatena.ne.jp/SeaHacker/20110319/1300503099:title=[DWR - java] ファイルをサーバにアップできない。「Uncaught TypeError: Cannot set property 'batch' of null」])


ちなみに、今時点でfileuploadは1.2.2になってた。


さて手順っす。


要点は2つで、
サーバ側の呼ばれる処理の引数をBufferedImageにしてあげて、

dwr.util.getValue(HOGE)

で返される値をサーバ側に渡す。
# 「HOGE」はimgタグのIDをいれる。#はいらない。


サーバ側のDWRの戻り値をBufferedImageにしてあげて、

dwr.util.setValue(HOGE2, コールバック関数の引数);

とすると、アップロードした写真が出てくる。


結構簡単。


以下、もともとの記事。


現在この記事は書きかけです。by ゆうじろう


Memoです。




サーバとの非同期通信はもっぱらDWRを使用している
ゆうじろうです。




さて、最近DWRの中だけでファイルのアップロードが出来ないものか
検討していました。



ありましたありました。


DWRがわかる方であれば、次のページをみるとなんとなく想像つくかと思います.
まずはDEMO:
http://apps.tibco.com/dwr/files/upload.html


それぞれのソース(HTML,Java
http://apps.tibco.com/dwr/files/upload.html




ただし、上記のやり方は
DWR3でしか動きません。
現在RC1



<DWR2以下の場合は次を参照>
http://fisheye5.cenqua.com/browse/~raw,r=1.2/dwr/web/fileupload/index.html
Servletを通す必要がある。




ちなみに、jarファイルの追加も必要
commons-fileupload-1.2.1.jar:
http://commons.apache.org/downloads/download_fileupload.cgi
commons-io-1.1.jar:
http://mirrors.ibiblio.org/pub/mirrors/maven2/commons-io/commons-io/1.1/



現在この記事は書きかけです。by ゆうじろう