import java.io.InputStreamReader; import java.io.IOException; import java.util.ArrayList; import java.util.List; import java.util.Scanner; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.commons.fileupload.FileItem; import org.apache.commons.fileupload.disk.DiskFileItemFactory; import org.apache.commons.fileupload.servlet.ServletFileUpload; public class MongoDBUpload extends HttpServlet { private MongoDBClient db = new MongoDBClient(); protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String jsonString = ""; int result = 0; try { List<FileItem> items = new ServletFileUpload(new DiskFileItemFactory()).parseRequest(request); for (FileItem item : items) { if (!item.isFormField()) { // item is the file (and not a field), read it in and add to List Scanner scanner = new Scanner(new InputStreamReader(item.getInputStream(), "UTF-8")); //converting uploaded file to json string while (scanner.hasNextLine()) { String line = scanner.nextLine().trim(); if (line.length() > 0) { jsonString += line; } } scanner.close(); result = db.addEntry(jsonString); request.setAttribute("msg", result+" Entry Added!"); break; } } request.setAttribute("result", db.getAll()); } catch (Exception e) { request.setAttribute("msg", e.getMessage()); e.printStackTrace(System.err); } response.setContentType("text/html"); response.setStatus(200); request.getRequestDispatcher("/index.jsp").forward(request, response); } }