长话短说 - 我有 fileUploader.jsp,当单击提交按钮时它会引用自身,并在之后进行一些文件处理。
我的问题是,当我尝试访问某些请求参数时,我得到了 NULL,代码如下:
<html>
<body>
<form enctype="multipart/form-data" name=uploadSapFile action="fileUploader.jsp" method="POST">
<table>
<tr><td>Select file to process:</td></tr>
<tr>
<td>File:</td>
<td><input type="file" name="fileName" size=50></td></tr>
<tr>
<td><input type="submit" name="action" value="Process"><input type="hidden" name="action" value="PROCESS"></td>
</tr>
</table>
</form>
<%
String action = null;
String referrer = request.getHeader("referer");
File file = null;
try {
if (referrer.indexOf("fileUploader.jsp") != -1) {
MultipartRequest parser = new ServletMultipartRequest(request, "fileLocation", 10000000);
action = parser.getURLParameter("action"); // THIS PARAMETER IS NULL
file = parser.getFile("fileName");
// Some file processing ... (not relevant to the problem)
finally {
if (file != null) {
file.delete();
}
}%>
</body>
</html>
附注然而,我得到的文件并能够处理是没有问题的,它只是来 self 正在努力处理的相同参数的其他参数。
如有任何建议,我们将不胜感激。
更新:将参数值作为隐藏字段发送,它有效,也编辑了代码
您可以将隐藏参数放入表单中,并在java代码中将其作为POST参数获取。据我所知,这是上传文件和传递参数的唯一一种解决方案。
我是一名优秀的程序员,十分优秀!