struts2:UEditor插入图片,上传失败,显示差号,没有错误信息

这个错误其实是自己代码的错误,相当愚蠢。如果不是巧合,这个bug可能会让我永远没法发现
我本来是做了一个项目,本地发布地址是xxxxxxxxx/zs。给客户发布的地址是xxxxxxxxx/zsyz。就这么个小问题,害我加了两条班,不过都是自己的错,活该。原因是这样的,
======大神的话=======================
Struts2的Filter会过滤到上传文件的request,封装为Struts2自己的MultiPartRequestWrapper,这个时候再到UEditor里的Uploader中用commons-fileupload组件解析request,就无法获取到正确的文件流,所以上传失败。
========不是我说的======================
因为这个原因,人家UEditor已经给出了解决方案,就是写一个自己的过滤器。例如:

import java.io.IOException;
import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter;

public class MyStrutsFilter extends StrutsPrepareAndExecuteFilter {
public void doFilter(ServletRequest req, ServletResponse res,FilterChain chain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) req;
//不过滤的url
String url = request.getRequestURI();
if ("/zs/ueditor/jsp/imageUp.jsp".equals(url)) {
chain.doFilter(req, res);
}else{
super.doFilter(req, res, chain);
}
}
}


这样,就不让strut2过滤imageUp.jsp的请求。完美。可是注意这里项目名字是写死的。【zs】这里。所以当我换了发布地址的时候,问题就来了。/zsyz/ueditor/jsp/imageUp.jsp这个请求将继续被拦截。需要改这里的名字。谨记。希望跟我犯了一样低级错误的童鞋可以引以为戒。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值