2014-10-01 117 views
1

图片上传使用request.getRealPath()本地主机不错,但同我们使用的服务器,这不是图片上传工作在本地主机上正常,但不是在服务器中的JSP

工作的工作,因为服务器找不到指定的路径。 image无法显示..我怎么才能解决这个问题。

这里是图片上传代码:导致调用的参数指定的文件

  filePath =request.getRealPath("") + "\\img\\";     
      System.out.println(filePath); 
     String contentType = request.getContentType(); 

     if ((contentType.indexOf("multipart/form-data") >= 0)) 
     { 
      DiskFileItemFactory factory = new DiskFileItemFactory(); 
      ServletFileUpload upload = new ServletFileUpload(factory); 
      List fileItems = upload.parseRequest(request); 
        // message= fileItems.get(2).toString(); 



      Iterator i = fileItems.iterator(); 

      while (i.hasNext()) { 
       FileItem fi = (FileItem) i.next(); 
           if(fi.isFormField()) 
           { 
            message=fi.getString(); 
            System.out.println("message is : "+message); 
            bean.setEmp_id(Integer.parseInt(message)); 
           } 
       if (!fi.isFormField()) { 
        String fieldName = fi.getFieldName(); 
        System.out.println("field name"+fieldName); 
        fileName = fi.getName(); 




        if (fileName.lastIndexOf("\\") >= 0) { 
         file = new File(filePath 
           + fileName.substring(fileName 
             .lastIndexOf("\\"))); 

        } else { 
         file = new File(filePath 
           + fileName.substring(fileName 
             .lastIndexOf("\\") + 1)); 

        } 
        fi.write(file); 
+0

你能不能显示代码?以及您在本地和运行时获得的路径? – 2014-10-01 12:14:20

+0

在localhost映像上传到以下路径:E:\ CRM \ .metadata \ .plugins \ org.eclipse.wst.server.core \ tmp0 \ wtpwebapps \ CRM \ img – 2014-10-01 12:17:08

+0

我使用org.apache.commons.fileupload库for图片上传 – 2014-10-01 12:18:37

回答

0

getRealPath()给出了绝对路径(文件系统)。它以特定于操作系统的格式返回路径。

阅读request#getRealPath的文档。

另外建议使用servletRequest.getSession().getServletContext().getRealPath("/")而不是servletRequest.getRealPath("/"),因为它已被弃用。

所以最好的办法是自己提供服务器的upload path,因为特定于OS的方法值返回的路径可能不可访问(权限)。

希望这有助于!

+0

非常感谢您的帮助。什么是问题。 – 2014-10-07 08:50:06

+0

很高兴我能帮忙:) – 2014-10-07 08:51:23

相关问题