Psst.. new poll here.
[email protected] webmail now available. Want one? Go here.
Cannot use outlook/hotmail/live here to register as they blocking our mail servers. #microsoftdeez
Obey the Epel!
Paste
Pasted as Java by kasun ( 12 years ago )
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package controler;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.MultipartConfig;
import javax.servlet.http.*;
import karsha.data.CollectionTypDB;
import karsha.data.DocumentDB;
import karsha.entities.CollectionType;
import karsha.entities.Document;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileItemFactory;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
/**
*
* @author v-saba
*/
public class UploadDocumentServlet extends HttpServlet{
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
HttpSession session = request.getSession();
String userPath = request.getServletPath();
String url = "";
if(userPath.equals("/uploaddocuments")) {
boolean isMultipart = ServletFileUpload.isMultipartContent(request);
if (isMultipart) {
FileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
HashMap requestParameters = new HashMap();
try{
List items = upload.parseRequest(request);
Iterator iterator = items.iterator();
while (iterator.hasNext()) {
FileItem item = (FileItem) iterator.next();
if (item.isFormField()) {
requestParameters.put(item.getFieldName(), item.getString());
} else {
byte[] fileContent = item.get();
Document newDocument = new Document();
newDocument.setDocumentName( requestParameters.get("docName").toString());
newDocument.setUserId(Integer.parseInt(session.getAttribute("userId").toString()));
String a = requestParameters.get("collection_type_new").toString();
newDocument.setCollectionId(Integer.parseInt(a));
newDocument.setDocumentContent(fileContent);
request.setAttribute("requestParameters", requestParameters);
if(DocumentDB.isFileNameDuplicate(newDocument.getDocumentName())){
url="/WEB-INF/view/uploaddoc.jsp?error=file name already exists, please enter another file name";
}else{
DocumentDB.insert(newDocument);
url="/WEB-INF/view/uploaddoc.jsp";
}
}
}
} catch (FileUploadException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
request.getRequestDispatcher(url).forward(request, response);
}
}
}
Revise this Paste