request.getParameter always null
Hello,
I'm using the Apache Commons FileUpload package to upload a file,
along with some other information such as username. I'm using JSP to
send the file and info to a servlet. The problem is that the
request's parameters are always null.
The form section of the JSP:
<form action="receivefileservlet" method="POST"
enctype="multipart/form-data">
<table cellspacing="0" cellpadding="0" border="0"
width="100%">
<tr>
<td valign="middle" align="right" width="20%"
height="110" style="font-family:Arial;
font-size:16.0px;"><br />Select a file type to
upload: </td>
<td valign="middle" align="left" width="80%"
height="110" style="font-family:Arial;
font-size:16.0px;">
<br />
<input type="radio" name="inputradio"
value="0"/>option 1<br />
<input type="radio" name="inputradio"
value="1"/>option 2<br />
<input type="radio" name="inputradio"
value="2"/>option 3<br />
<input type="radio" name="inputradio"
value="3"/>option 4<br />
<input type="hidden" name="username" value= <%=
username %> >
<input type="hidden" name="full_name" value= <%=
full_name %> >
<input type="hidden" name="state" value= <%=
state_code %> >
</td>
</tr>
<tr>
<td valign="middle" align="right" width="20%"
style="height:30.0px; font-family:Arial;
font-size:16.0px;"
height="37">Enter file name to
upload: </td>
<td valign="middle" align="left" width="80%"
style="height:30.0px; font-family:Arial;
font-size:16.0px;"
height="37">
<input type="file" name="uploadfield"
accept="application/excel,application/vnd.ms-excel,application/x-excel,application/x-msexcel"
size="20"/>
</td>
</tr>
<tr>
<td valign="middle" align="right" width="20%"
style="height:30.0px; font-family:Arial;
font-size:16.0px;"> </td>
<td valign="middle" align="left" width="80%"
style="height:30.0px; font-family:Arial;
font-size:16.0px;">
<input type="submit" name="submit" value="Submit"/>
</td>
</tr>
</table>
I've tried several ways to get the parameters from this, like:
--the way I'm used to doing it
String username = request.getParameter("username").toString();
String fullname = request.getParameter("full_name").toString();
String state = request.getParameter("state").toString();
String filetype = request.getParameter("inputradio").toString();
--First line throws nullpointerexception
--(found this on the web while googling)
Attributes attribs = new Attributes();
Map map = request.getParameterMap();
Iterator iter = map.entrySet().iterator();
while (iter.hasNext()) {
Entry n = (Entry)iter.next();
String key = n.getKey().toString();
String values[] = (String[]) n.getValue();
attribs.putValue(key,values[0].toString());
}
--map values, null, no keys or values
--The example code from Apache:
DiskFileItemFactory factory = new DiskFileItemFactory(size, tempPath);
ServletFileUpload upload = new ServletFileUpload(factory);
ServletFileUpload sfu = new ServletFileUpload();
isMultipart = sfu.isMultipartContent(ctx);
--last line ^^ throws nullpointerexception
I've been trying to find the answer for this all week, and I can't
find it. I've got some other code that worked for this, but it
depended on finding the indexOf() certain characters to get username
and state, and the file. I don't really want to do that. It was also
in a JSP rather than a servlet.
Almost bald from pulling my hair out, I'd love some help, and thank
you in advance for your consideration.
--
Teresa Robinson
General Dynamics
Information Technology
Teresa.Robinson [at] gdit [dot] com