1

JSP =.= アップロードにはあなたの助けが必要です。

アップロード.jsp

<body> <form name="form1" id="form1" action="test" method="post" enctype="multipart/form-data"> <input type="hidden" name="hiddenfield1" value="ok"> Files to upload: <br/> <input type="file" size="50" name="file1"> <br/> <input type="file" size="50" name="file2"> <br/> <input type="file" size="50" name="file3"> <br/> <input type="submit" value="Upload"> </form> </body>


これは私のTestServlet パッケージ テストです。

public class TestServlet extends HttpServlet {

private static final long serialVersionUID = 1L;

public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
    doPost(request, response);
}

public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException {
    response.setContentType("text/html");
    PrintWriter out = response.getWriter();

    out.println("Hello<br/>");

    boolean isMultipartContent = ServletFileUpload.isMultipartContent(request);
    if (!isMultipartContent) {
        out.println("You are not trying to upload<br/>");
        return;
    }
    out.println("You are trying to upload<br/>");

    FileItemFactory factory = new DiskFileItemFactory();
    ServletFileUpload upload = new ServletFileUpload(factory);
    try {
        List<FileItem> fields = upload.parseRequest(request);
        out.println("Number of fields: " + fields.size() + "<br/><br/>");
        Iterator<FileItem> it = fields.iterator();
        if (!it.hasNext()) {
            out.println("No fields found");
            return;
        }
        out.println("<table border=\"1\">");
        while (it.hasNext()) {
            out.println("<tr>");
            FileItem fileItem = it.next();
            boolean isFormField = fileItem.isFormField();
            if (isFormField) {
                out.println("<td>regular form field</td><td>FIELD NAME: " + fileItem.getFieldName() + 
                        "<br/>STRING: " + fileItem.getString()
                        );
                out.println("</td>");
            } else {
                out.println("<td>file form field</td><td>FIELD NAME: " + fileItem.getFieldName() +
                        "<br/>STRING: " + fileItem.getString() +
                        "<br/>NAME: " + fileItem.getName() +
                        "<br/>CONTENT TYPE: " + fileItem.getContentType() +
                        "<br/>SIZE (BYTES): " + fileItem.getSize() +
                        "<br/>TO STRING: " + fileItem.toString()
                        );
                out.println("</td>");
            }
            out.println("</tr>");
        }
        out.println("</table>");
    } catch (FileUploadException e) {
        e.printStackTrace();
    }
}

}

と私の web.xml
Web XML 画像はこちら

ファイルを実行してアップロードするとき

エラーが発生しました!

エラー画像はこちら

私は本当にあなたの助けが必要です!!

4

1 に答える 1

0

あなたが含めたエラースクリーンショットのリンクから見てください。

それは言う

java.lang.NoClassDefFoundError: org/apache/commons/io/output/DeferredFileOutputStream

commons-io.jarクラスパスにApache Commons IO jar がないようです。Commons File Upload はそれに依存しています。

Apache Commons サイトからダウンロードできます

于 2013-04-06T07:49:35.223 に答える