小编Don*_*ati的帖子

如何检查 HttpServletRequest getPart("...") 是否设置

我正在将 CSV 文件上传到 Java servlet。我的 HTML 表单如下所示:

<form action="upload" method="post" enctype="multipart/form-data">
<input type="file" name="file" id="file">
<input type="submit" name="submitBt" id="submitBt">
</form>
Run Code Online (Sandbox Code Playgroud)

在我的 servlet 中,我执行以下操作来检索文件:

public void uploadCsv(HttpServletRequest request) {
request.getPart("file")
...
}
Run Code Online (Sandbox Code Playgroud)

设置文件后,servlet 就会开始工作,一切正常。

我的问题是,我在同一个 JSP 中有第二个表单。因此,当提交表单时,我想测试是否设置了包含 CSV 文件的名为“file”的输入。

我尝试了以下操作:

if (req.getParameter("file") != null)
Run Code Online (Sandbox Code Playgroud)

总是假的

if (request.getParameterMap().containsKey("file"))
Run Code Online (Sandbox Code Playgroud)

也总是假的

if (req.getPart("file") != null)
Run Code Online (Sandbox Code Playgroud)

如果文件未设置则抛出异常

帮助!d:

java forms jsp servlets

3
推荐指数
1
解决办法
5413
查看次数

标签 统计

forms ×1

java ×1

jsp ×1

servlets ×1