Multiple file Upload using Apache Commons and JSP

Hi Friends,

Recently i was in a situation where i needed  to upload multiple files at one go in jsp.(Not Servelet 😦  )

So here is the simple code I’ve made to upload Multiple Files to Desired Folder at Server.

index page

<!doctype html>
<head>
<title>Upload page</title>
<!--
Simple Page to Upload Multiple Files at one Go.
@author Shubham Shah 19oodp14@gmail.com 2017
-->
</head>
<body>
<form action="FileUpload.jsp" method="post" enctype="multipart/form-data" name="form1" id="form1">
<center>
<table border="2">
<tr>
<td align="center"><b>Multiple File Uploads</td>
</tr>
<tr>
<td> 1) Specify file: <input name="file" type="file" id="file"></td>
</tr>
<tr>
<td> 2) Specify file:<input name="file" type="file" id="file"></td>
</tr>
<tr>
<td> 3) Specify file:<input name="file" type="file" id="file"></td>
</tr>
<tr>
<td align="center"> <input type="submit" name="Submit" value="Submit files"/></td>
</tr>
</table>
<center>
</form>
</body>
</html>

Db Page :

<%@ page import="java.util.*" %>
<%@ page import="java.util.Iterator" %>
<%@ page import="java.io.File" %>
<%@ page import="org.apache.commons.fileupload.servlet.*" %>
<%@ page import="org.apache.commons.fileupload.disk.*"%>
<%@ page import="org.apache.commons.fileupload.servlet.ServletFileUpload"%>
<%@ page import="org.apache.commons.fileupload.disk.DiskFileItemFactory"%>
<%@ page import="org.apache.commons.fileupload.*"%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!doctype html>
<!--
Simple Page to Upload Multiple Files at one Go.
@author Shubham Shah 19oodp14@gmail.com
-->
<head>
<script>
<title>File Upload</title>
</script>
</head>
<center>
<h1>Your files uploaded </h1>
<br />
<br />
<%
String filePath = "";
boolean isMultipart = ServletFileUpload.isMultipartContent(request);
System.out.println("isMultipart="+isMultipart);
System.out.println(config.getServletContext());
File root_directory = new File(getServletContext().getRealPath("/"));
root_directory = root_directory.getParentFile();
System.out.println("root_directory->?"+root_directory);
filePath = root_directory.toString()+"//Your_Desired_Folder//file_uploads//";
FileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
List items=null;
try
{
items = upload.parseRequest(request);
} catch (FileUploadException e)
{
e.printStackTrace();
}
Iterator itr = items.iterator();
while (itr.hasNext())
{
FileItem item = (FileItem)(itr.next());
if (item.isFormField())
{
try{
String field=item.getFieldName();
String value=item.getString();
System.out.println("field="+value);
}
catch(Exception e)
{
System.out.println("Exception "+e);
}
}
else {
try
{
String itemName = item.getName();
out.println("\n FileName:"+itemName);%><br /><%
File savedFile = new File(filePath+itemName);
item.write(savedFile);
//out.println("done");
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
%>
</center>
</body>
</html>
view raw FileUpload.jsp hosted with ❤ by GitHub

 

Feel free to comment if you have any doubts.

If liked please share.

Thanks 🙂

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.