问题在这里:
String p_text = request.getParameter("p_data");String gallery_nm = request.getParameter("upload_wall_gallery");从如何使用JSP /Servlet将文件上传到服务器?你应该把你的参数,
FileItem该
isFormField()方法返回
true。从答案中发布相关代码片段:
for (FileItem item : formItems) { if (item.isFormField()) { // Process regular form field (input type="text|radio|checkbox|etc", select, etc). String fieldname = item.getFieldName(); String fieldvalue = item.getString(); // ... (do your job here) } else { // Process form file field (input type="file"). String fieldname = item.getFieldName(); String filename = FilenameUtils.getName(item.getName()); InputStream filecontent = item.getInputStream(); // ... (do your job here) }}解决方案:
else调用时,将其他请求参数处理移至该部分
if (!item.isFormField())。
for (FileItem item : formItems) { // processes only fields that are not form fields if (!item.isFormField()) { String fileName = new File(item.getName()).getName(); fileName1+=fileName; String filePath = uploadPath + File.separator + fileName; File storeFile = new File(filePath); // saves the file on disk item.write(storeFile); } else { //here... String fieldname = item.getFieldName(); String fieldvalue = item.getString(); if (fieldname.equals("p_data")) { //logic goes here... } else if (fieldname.equals("upload_wall_gallery")) { //next logic goes here... } }}


