This week's book giveaway is in the OCAJP forum.
We're giving away four copies of Programmer's Guide to Java SE 8 Oracle Certified Associate (OCA) and have Khalid A Mughal & Rolf W Rasmussen on-line!
See this thread for details.
Win a copy of Programmer's Guide to Java SE 8 Oracle Certified Associate (OCA) this week in the OCAJP forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Please tell the reason for errors in the code. CODE and Errors given

 
yoman sharma
Greenhorn
Posts: 13
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi i am trying to run following servlet code and getting errors which i have shown after the code. can anybody tell where is the problem?

// Code for FileUploadCommons



package com.jspbook;

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import org.apache.commons.fileupload.*;
import java.util.*;

public class FileUploadCommons extends HttpServlet {
public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException {

response.setContentType("text/html");
PrintWriter out = response.getWriter();

out.println("<html>");
out.print("File upload success. <a href=\"/jspbook/files/");
out.print("\">Click here to browse through all uploaded ");
out.println("files.</a><br>");

ServletContext sc = getServletContext();
String path = "c:/files";
org.apache.commons.fileupload.FileUpload fu = new org.apache.commons.fileupload.FileUpload();
fu.setSizeMax(-1);
fu.setRepositoryPath(path);
try {
List l = fu.parseRequest(request);
Iterator i = l.iterator();
while (i.hasNext()) {
FileItem fi = (FileItem)i.next();
// trim out full path info if it is included
String filename = fi.getName();
int slash = filename.lastIndexOf("\\");
if (slash != -1) {
filename = filename.substring(slash + 1);
}
// write the file to the 'files' directory
fi.write(path+"/"+filename);
}
}
catch (Exception e) {
throw new ServletException(e);
}

out.println("</html>");
}
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException {
doPost(request, response);
}
}



// I am getting following error messages on Compilation




C:\>javac FileUploadCommons.java
FileUploadCommons.java:27: cannot resolve symbol
symbol : method setRepositoryPath (java.lang.String)
location: class org.apache.commons.fileupload.FileUpload
fu.setRepositoryPath(path);
^
FileUploadCommons.java:40: write(java.io.File) in org.apache.commons.fileupload.
FileItem cannot be applied to (java.lang.String)
fi.write(path+"/"+filename);
^
2 errors
 
Ben Souther
Sheriff
Posts: 13411
Firefox Browser Redhat VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator



1.) class.org.apache.commons.fileupload.FileUpload does not have a setRepositoryPath() method. Look at the API to figure out what the name of the method you're looking for is.

2.) The FileItem.write(java.io.File) can not take a String as an argument.
It needs a File object.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic