Chinaunix首页 | 论坛 | 博客
  • 博客访问: 419520
  • 博文数量: 155
  • 博客积分: 2590
  • 博客等级: 少校
  • 技术积分: 2161
  • 用 户 组: 普通用户
  • 注册时间: 2012-10-25 09:33
文章分类

全部博文(155)

文章存档

2015年(1)

2014年(2)

2013年(55)

2012年(97)

分类: 系统运维

2012-12-17 10:09:47

UEditor 源码自带一个上传的jsp代码,详见ueditor的“/ueditor1_2_4_0-utf8-jsp/jsp/”目录下的imageUp.jsp 及fileUp.jsp文件。但是如果项目中使用了Apache Struts2框架,将/* 过滤 ,由于该框架默认使用Apache的Commons FileUpload组件和内建的FileUploadInterceptor拦截器实现文件上传,将request中的文件域封装到action中的一个File类型的属性中,并删除request中的原有文件域,因此上传文件会失败。
        自己找很久未找到原因,上网查才明白了.
        解决办法1,自己写个action 代替原来的jsp文件 ,实现上传
                    2,自定义一个过滤器,单独指定不对 /ueditor1_2_4_0-utf8-jsp/jsp/ 下的jsp进行过滤;代码示例如下:
Java代码 :
  1. import java.io.IOException;  
  2. import javax.servlet.FilterChain;  
  3. import javax.servlet.ServletException;  
  4. import javax.servlet.ServletRequest;  
  5. import javax.servlet.ServletResponse;  
  6. import javax.servlet.http.HttpServletRequest;  
  7. import org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter;  
  8.   
  9. public class MyStrutsFilter extends StrutsPrepareAndExecuteFilter {  
  10.     public void doFilter(ServletRequest req, ServletResponse res,FilterChain chain) throws IOException, ServletException {  
  11.         HttpServletRequest request = (HttpServletRequest) req;  
  12.         //不过滤的url  
  13.         String url = request.getRequestURI();  
  14.         System.out.println(url);  
  15.         if (url.contains("/mywebapp/ueditor1_2_4_0-utf8-jsp/jsp/")) {  
  16.             System.out.println("使用自定义的过滤器");  
  17.             chain.doFilter(req, res);  
  18.         }else{  
  19.             System.out.println("使用默认的过滤器");  
  20.             super.doFilter(req, res, chain);  
  21.         }  
  22.     }  
  23. }  
struts过滤器的配置改为
 
Xml代码 :
  1. <filter>  
  2.     <filter-name>struts2filter-name>  
  3.     <filter-class>  
  4.         com.sufeng.ahan.util.MyStrutsFilter  
  5.     filter-class>  
  6.   filter>  
  7.   <filter-mapping>  
  8.     <filter-name>struts2filter-name>  
  9.     <url-pattern>/*url-pattern>  
  10.   filter-mapping>  
  11. 原文:
阅读(856) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~