• 締切済み

JSPでサーバーにファイルのアップロード

JSPで掲示板を作成しているのですが CGIのような画像貼り付け掲示板を作成しようと思っています。 画像ファイルを決まったフォルダにアップロードしたいと思っているのですが javaがまだ初心者のためよくわからないのですが お教えいただけないでしょうか? よろしくお願います。

  • Java
  • 回答数3
  • ありがとう数7

みんなの回答

  • ssr-y6
  • ベストアンサー率71% (5/7)
回答No.3

 以下は、strutsのMultipartIteratorクラスを使ったサーブレットとjsp(html)の一例です。 -----jsp(html)----- <%@ page contentType="text/html; charset=UTF-8" %> <html> <head><title>File Uploader</title></head> <body> <form action="http://localhost:8080/minnaservlet/89680" method="post" enctype="multipart/form-data"> File:<input type="file" name="file"><br> <input type="submit" value="Send FileData"> </form> </body> </html> -----サーブレット----- import java.io.*; import javax.servlet.*; import javax.servlet.http.*; import org.apache.struts.upload.*; public class fileupload extends HttpServlet { public void doPost(HttpServletRequest req, HttpServletResponse res) { int Int1; try { res.setContentType("text/html"); PrintWriter PW = res.getWriter(); PW.println("<html><head><title>Upload</title></head>"); MultipartIterator Ite = new MultipartIterator(req); MultipartElement Ele; FileOutputStream OutFile = new FileOutputStream(new File(getServletContext().getRealPath("/tmp89680"))); FileInputStream InFile; while ((Ele = Ite.getNextElement()) != null) if (Ele.isFile()) { InFile = new FileInputStream(Ele.getFile()); while((Int1 = InFile.read()) != -1) OutFile.write(Int1); InFile.close(); }; OutFile.close(); PW.println("<body><br>Upload Done</body>"); PW.println("</html>"); } catch (Exception ex) { System.out.println(ex.toString() + ":Post"); }; }; }

  • KaZtoYou
  • ベストアンサー率73% (11/15)
回答No.2

htmlでformタグのENCTYPE=multipart/form-dataを使ってinputタグのtype=FILEで参照したファイルのpostされたデータの取得方法に絞って説明すればいいのでしょうか?というかこれ以外思いつかない(苦笑) 以下に、サンプルがあるので参考にしてみては? #それ私もほしぃ。完成したら是非公開しましょう(^^)

参考URL:
http://home.eastmail.com/~yang/tips/fileUpload.html
  • arata
  • ベストアンサー率49% (139/279)
回答No.1

Srevletでの例になってしまうのですが、下記のURLの「Servlet でファイルのアップロードを行いたいのですが?」を参考にされてはいかがでしょうか?

参考URL:
http://www.gimlay.org/~andoh/hatena/java/javafaq.html#S125

関連するQ&A

  • jspでファイルをサーバーへアップロードするには

    jspでiPadから、サーバーへ画像ファイルをアップロードしたいのですが、 どうやればよいでしょうか? jspの引数に、バイナリで乗せるということだけは、 インターネットで調べてわかりました。

  • jsp&サーブレットにてjpgやzip等のファイルを別フォルダにコピー&貼り付けの処理

    現在jsp、サーブレット、ビーンにて 画像ファイルやzipファイルなどをアップロードできるサイトを作成していまして、アップロードについては jakartaのfileuploadで特定のフォルダにアップロードする処理は上手くいったのですが、 アップロードしたファイルを、別のフォルダにコピー&貼り付けさせるような処理を行いたいと思っています。 java.ioについて調べてみると txtファイルの中身を読み込んだり書き込んだりする 処理しか見つける事ができず、つまずいております。 どなたかjpgやzip等を別フォルダへの 解説をしているサイトをご存知でしたら 教えていただけますでしょうか。 もしくはあのクラスを利用すれば出来る等でも 結構ですので、すみませんがご教授よろしくお願いします

    • ベストアンサー
    • Java
  • JSPやServletはアクセス後最終的にサーバOSネイティブファイルでサーバに保存されるのか

     Servletはアップロード時にすでにclassファイルでサーバに保存、JSPはアップロード時にjspファイルで1回目のアクセス時にjavaファイルが作成(そしてサーバに保存)されさらにclassファイルが作成(そしてサーバに保存)されることは理解しました。  classファイルとなったあとさらにHotSpot VMなどでサーバOSネイティブファイル(Windowsサーバならexe形式?)にコンパイルされサーバに保存されるのかどうかが分かりません。  アドバイスよろしくお願いいたします。

    • ベストアンサー
    • Java
  • ファイルアップロード

    私は、今、Javaで作成しているシステム上に画像アップロード機能を作成しています。 これは、アップロードする画像と同時に、テキストデータを送信したかったので、JavaCommonsのFileUploadを使用せずに、 http://homepage3.nifty.com/uzblend/servlet/#x71 こちらを参考に画像ファイルアップロードを作成しました。 ここで一つ困ったことが起きました。 ファイルをアップロードをして、ページを参照しても、すぐには画像が更新されず、サーバを再起動しないと更新されないです。 なんとか解決する方法はないでしょうか。 開発環境 WindowsXP J2SE 5.0 Tomcat5.0

    • ベストアンサー
    • Java
  • ファイルのアップロード

    初心者です。 ヤフオクなどで画像などのファイルをブラウザのボタンからアップロードしたいのですが、javascriptでできるものなのでしょうか?それともjavaで書くほうが一般的なのでしょうか?サンプルコードなどあれば ご紹介ください。宜しくお願いします。

  • ファイルのアップロード

    CGI初心者です。 http://nais.to/~yto/tools/ssupload/ NAIS.TOさんのサイトのファイルアップロードのソースを実際に試してみているのですが、 txtファイルやdatファイルはアップロード後開くことができるのですが、 pdfやxlsファイルは『ファイルが壊れています』と言われ、 フォルダに保存はされているのですが、開くことはできません。 html画面では文字コードがs-jisなのに cgiになるとISOになるのが原因だったりしますでしょうか。 ご回答宜しくお願いいたします。 環境 IE6 APACHE HTTP SERVER 2.0.58 ActivePerl 5.8.8

    • ベストアンサー
    • CGI
  • ファイルをアップロードするプログラム

    自分のWEBサイトにおきたいのですが、無料でファイルをアップロードする CGIなどのプログラムはありませんか? イメージとしては、よくある形式ですが、参照をクリックして、 ファイルを選択して、アップロードする奴です。 アップロードするファイルは、テキストなどもあるので、 アップロードしたファイルをクリックすると、見れる形だとよいです。 また、掲示板のCGIではなく、別物がよいです。

    • 締切済み
    • CGI
  • ファイルのアップロードについて

    ファイルのアップロードができるCGIはフリーのものなどがたくさんweb上で配布されていますよね。 それをダウンロードしてくればいいのですが、1からつくりたいのです。 ダウンロードしてきて中をみてみたりしたのですが、アップロード以外の機能のことなどがたくさん書かれすぎていて、 どこがアップロードに対してのコードなのかイマイチわかりませんでした。 以前もアップローダーをダウンロードしてきて自分で改造したのですが、それではやはり身につかないようなので、 今回は一からつくろう!と思ったわけなんですが。。 アップロードをするだけのコードを少し教えていただけませんでしょうか? たとえば $folder=******; $img=テキストボックスを使用して入力された画像の箇所 アップロードの実行 みたいな感じになれば多少なりともわかるような気がするのですが。 ・ファイルのサイズの制限 ・ファイルの種類の制限 等はなくて大丈夫です。

    • ベストアンサー
    • Perl
  • ファイルアップロードの設置がうまくいきません。。

    ファイルアップロードの設置がうまくいきません。。 CGI-PLANTサイトのUPLOADERを設置しようとしているのですが、 http://wws.cside.com/cgi-plant/diary/uploader/ 詳細は、以下↓のreadmeに、とかかれてありますが、 cgiを同フォルダでアップする指定がどこかは書かれてありませんでした。。(探しても見つかりません;) http://wws.cside.com/cgi-plant/diary/uploader/readme.html サーバー指定のフォルダ(cgiをいれるフォルダ)には、cgiしか入れられないので、 それ以外のファイルを他においています。 その他のファイルを読み込む指定?(置かれている場所が移動になるので)、どこを修正すればいいでしょうか? 恐らくそれができていないせいで、Internal Server Errorがでて動かないと思うのです。。 ここのCGIは、あまり説明がないもので、、わかりづらいのですが、 管理機能のある、(閲覧のみ、アップロード権限あり、ファイルの削除権限あり、管理者、とわかれている) その機能+ファイル(Word、Excel)アップロードをしたいのです。 急いでいるので、他のソフトで、cgiのフォルダと別のフォルダで繋げる設定がわかるのがありましたら、 そちらを紹介していただきたいです;; どうかよろしくおねがいいたします。

    • ベストアンサー
    • CGI
  • CGIで画像ファイルのアップロード

    CGIで画像をアップロードできる掲示板をつくっているのですが、 gif、png、bmp、jpgなどの画像ファイルの縦横のサイズを取得する方法がわかりません。 縦横の比率を変えないでサムネイル表示させたいと思っているのですが、どうしたらよいでしょうか??

    • ベストアンサー
    • Perl

専門家に質問してみよう