sturts2和kindeditor的文件上传,upload.parseRequest(request)得到的List为空
来源:互联网 发布:狗哥王兆辉 知乎 编辑:程序博客网 时间:2024/05/17 03:55
如题,使用kindeditor插件上传文件,
FileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); List items = upload.parseRequest(request); Iterator iter = items.iterator(); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); //上传文件 if (!item.isFormField()) { ...... ...... try{ File uploadedFile = new File(savePath,tempName); item.write(uploadedFile); }catch(Exception e){ errorMsg = "上传文件失败。"; } } }
调用upload.parseRequest(request)来处理时,返回了空的items
导致原因是struts2把原始的原来S2为简化上传功能,把所有的enctype="multipart/form-data"表单做了wrapper最后把HttpServletResquest封装成 org.apache.struts2.dispatcher.multipart.MultiPartRequestWrapper
解决方法1:
web.xml修改
<filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
将/*修改为/*.action
<filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*.action</url-pattern> </filter-mapping>
方法2:
在struts2配置文件中增加
<constant name="struts.action.excludePattern" value="/kindeditor/jsp/upload_json.jsp"></constant>
方法3:
<bean type="org.apache.struts2.dispatcher.multipart.MultiPartRequest" name="myRequestParser" class="com.MyRequestParser" scope="default" optional="true" /> <constant name="struts.multipart.handler" value="myRequestParser" />
package com; import java.io.IOException; import javax.servlet.http.HttpServletRequest; import org.apache.struts2.dispatcher.multipart.JakartaMultiPartRequest; public class MyRequestParser extends JakartaMultiPartRequest { public void parse(HttpServletRequest servletRequest, String saveDir) throws IOException { } }
虽然这个类什么也没有,但是必须得有。
这样就可以解决 List items = upload.parseRequest(request);它为空的问题了。
0 0
- sturts2和kindeditor的文件上传,upload.parseRequest(request)得到的List为空
- 解决文件上传时upload.parseRequest(request)得到的List为空
- 使用bootstrap-fileinput的问题:上传时upload.parseRequest(request)得到的List为空
- Android+struts上传文件时upload.parseRequest(request)为空
- fileItems=upload.parseRequest(request);//request为空的解决方法
- SpringMVC + Kindeditor时List items = upload.parseRequest(request);为空
- upload.parseRequest(request)为空
- upload.parseRequest(request)为空
- kindeditor上传文件在SpringMVC中servletFileUpload.parseRequest(request)解析为空获取不到数据问题 .
- 开发日志:struts2使用commons.fileupload上传附件,并解决upload.parseRequest(request)为空的问题
- parseRequest(request)为空的问题
- List items=upload.parseRequest(request)错误的原因
- upload.parseRequest为空
- upload.parseRequest为空
- upload.parseRequest 为空
- upload.parseRequest为空
- struts2 上传文件 parseRequest()解析request为空 解决办法
- struts2 上传文件 parseRequest()解析request为空 解决办法
- Android打包之Ant多渠道打包的实现
- Java OCR 图像智能字符识别技术,可识别中文
- flvplayer.swf flv视频播放器使用方法 (转载)
- ssl java web
- VS2010/MFC编程入门之十七(对话框:字体对话框)
- sturts2和kindeditor的文件上传,upload.parseRequest(request)得到的List为空
- JAVA中properties资源调用简单示例
- stc-isp协议
- 软件质量保证------我们需要什么样的QA
- Struts2基础
- SSH隧道
- Android开发学习笔记:浅谈WebView
- Cocos2d-x简单游戏<植物大战僵尸>代码实现|第五部分:公用类<后续会提供源码下载链接>
- Linux技术学习微信公众账号:Linux技术学习