繁体   English   中英

“ java.lang.NoSuchMethodError:org.apache.commons.fileupload.FileUploadBase.isMultipart”请帮助我解决此异常

[英]“java.lang.NoSuchMethodError: org.apache.commons.fileupload.FileUploadBase.isMultipart” pls help me to solve this exception

HTTP状态500-

类型Exception报告

信息

描述服务器遇到内部错误(),导致服务器无法满足此请求。

例外:

javax.servlet.ServletException: Servlet execution threw an exception
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)

根本原因:

java.lang.NoSuchMethodError: org.apache.commons.fileupload.FileUploadBase.isMultipartContent(Lorg/apache/commons/fileupload/RequestContext;)Z
org.apache.commons.fileupload.servlet.ServletFileUpload.isMultipartContent(ServletFileUpload.java:71)
WindsofChange.User_FileEncrypt.doPost(User_FileEncrypt.java:50)
javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)

note注意在Apache Tomcat / 7.0.14日志中可以找到根本原因的完整堆栈跟踪。

Apache Tomcat / 7.0.14

这是我的代码:

public class ServletDemo extends HttpServlet {
private static final byte[] initialization_vector = { 22, 33, 11, 44, 55, 99, 66, 77 };
File encryptedPath, uploadedFile;
String fileName;



@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    boolean isMultipart = ServletFileUpload.isMultipartContent(request);  
     response.setContentType("text/html");  
      PrintWriter out = response.getWriter();  
    if (isMultipart) {  
       // Create a factory for disk-based file items  
       FileItemFactory factory = new DiskFileItemFactory();  
       // Create a new file upload handler  
       ServletFileUpload upload = new ServletFileUpload(factory);  
      try {  
         // Parse the request  
         List /* FileItem */ items = upload.parseRequest(request);  
        Iterator iterator = items.iterator();  
        while (iterator.hasNext()) {  
          FileItem item = (FileItem) iterator.next();
          //filesize=item.getSize(); get filesize in bytes
          if (!item.isFormField())  
           {  
            fileName = item.getName();
            String root = getServletContext().getRealPath("/");
            File path = new File(root + "/uploads");  
            //if uploads folder not exists create
            if (!path.exists())  
             {  
              boolean status = path.mkdirs();  
             }  
            uploadedFile = new File(path + "/" + fileName);
            encryptedPath = new File(path + "/encrypted" + fileName);
            out.println(uploadedFile.getAbsolutePath()); 
            try{
             if(fileName!="")  
            item.write(uploadedFile);  
             else  
               out.println("file not found");  
            }catch(Exception e){}
             out.println("File Uploaded Successfully....:-)");  
          }  
           else  
           {  
             String abc = item.getString();  
           }

        }
        }catch(Exception e){e.printStackTrace();}

       }  
     else  
     {  
       out.println("Not Multipart");  
     }
  } 

}

我认为问题与您的代码无关,可能是Jar造成问题的原因。 调整课程加载顺序,将可以解决问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM