Get the tools you need to learn Java skills fast!
Video tutorials, eBooks, hands-on lab exercises, sample code.
Get started
The moose likes Servlets and the fly likes how do i get value from input type file in servlet? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of The Software Craftsman this week in the Agile forum!
JavaRanch » Java Forums » Java » Servlets
Bookmark "how do i get value from input type file in servlet?" Watch "how do i get value from input type file in servlet?" New topic

how do i get value from input type file in servlet?

Maurani saha

Joined: Sep 24, 2008
Posts: 1
Actualy i just want to send an attachment using javamail api....previously my code was working fine suddenly its not working....i did nt use enctype="multipart/form-data" bt it was working fine.
whenever i am using this code means enctype="multipart/form-data" i am getting null value using request.getParameter from servlet as servlet not support it...i just want to know how can i get the value....
And i also want to know what value actualy we should get..means should we gt the actual path of the file means filename="c:/a.doc" or only a.doc.

<form METHOD=post ACTION="action.cgi"
<input TYPE="file" NAME="filename">
I have used daman sidhu's multipart class to solve this problem.
i got null values in myParam;and got .\a.txt value from File f=multi.getFile(name);I think i should gt the full path dat is d:/a.txt.

One more thing after using this code whenever i m trying to get other field
using normal process request.getparameter (name)...i m getting null value...

<form name="form1" ENCTYPE="multipart/form-data" method=post action="http://localhost:8084/mail/mailSms ">
<input type="file" name="fileAttachment1" value="fileAttachment1" id="fileAttachment1">
<input type="submit" value="upload" />

MultipartRequest multi=new MultipartRequest(request,".",5*1024*1024);

File ff=multi.getFile("fileAttachment1");
Enumeration files=multi.getFileNames();
String name=(String)files.nextElement();
String filename=multi.getFilesystemName(name);
String type=multi.getContentType(name);
File f=multi.getFile(name);

String myParam=multi.getParameter("fileAttachment1");

please help me in this regard............
thanks in advance
pradeep singh
Ranch Hand

Joined: Oct 23, 2007
Posts: 339
Unfortunately, the servlet API provides no high-level tools to read uploaded files;you have to call request.getInputStream and parse the request yourself.
Fortunately,numerous third-party libraries are available for this task.One of the most popular is from the Jakarta Commons library;for details ,see

Are you using this in Marketing mails project?
[ September 25, 2008: Message edited by: pradeep singh ]

SCJP 5.0(75%), SCWCD 5.0(88%)
Bear Bibeault
Author and ninkuma

Joined: Jan 10, 2002
Posts: 62317

There is an entry in the JSP FAQ on this subject.

[Asking smart questions] [Bear's FrontMan] [About Bear] [Books by Bear]
I agree. Here's the link:
subject: how do i get value from input type file in servlet?