ueditor 在线附件和在线图片路径错误BUG补丁
博客专区 > ___Null 的博客 > 博客详情
ueditor 在线附件和在线图片路径错误BUG补丁
___Null 发表于3年前
ueditor 在线附件和在线图片路径错误BUG补丁
  • 发表于 3年前
  • 阅读 3498
  • 收藏 5
  • 点赞 3
  • 评论 4
  1. 错误

  2.           ueditor上传附件时显示和下载都是正常的,当下次点击在线附件时图片图标显示错误,再添加到网页中访问的时候出现404错误,比如:
    第一次添加:http://192.168.1.4:8080/uedit2/ueditor/jsp/upload/file/20140622/1403423931425017681.png
    第二次就变成了:http://192.168.1.4:8080/uedit2/C:/Program Files/Apache Software Foundation/Tomcat 7.0/wtpwebapps/uedit2/ueditor/jsp/upload/file/20140622/1403423931425017681.png

            用firebug查看网络可以发现,当请求 controller.jsp?action=listimg 或者controller.jsp?action=listfile 的时候后端返回的url竟然是后台文件的绝对路径,导致前端无法访问资源时出现404错误。

  3. 修解决办法

    虽然检查了配置文件很多次了,但是还是出现这个问题,也不知道是不是bug,ueditor后台代码挺复杂的,为了简单起见(怕改错) 就用了下面的方法偷懒一下。

    代码:

    把  jsp/controller.jsp 里面的代码修改一下

  4. <%@ page language="java" contentType="text/html; charset=UTF-8"
    
        import="com.baidu.ueditor.ActionEnter"
    
        pageEncoding="UTF-8"%>
    <%@ page trimDirectiveWhitespaces="true" %>
    <%
    request.setCharacterEncoding( "utf-8" );
    response.setHeader("Content-Type" , "text/html");
    
    String rootPath = application.getRealPath( "/" );
    
    String action = request.getParameter("action");
    String result = new ActionEnter( request, rootPath ).exec();
    if( action!=null && 
       (action.equals("listfile") || action.equals("listimage") ) ){
        rootPath = rootPath.replace("\\", "/");
        result = result.replaceAll(rootPath, "/");//把返回路径中的物理路径替换为 '/'
    }
    out.write( result );
    %>
共有 人打赏支持
粉丝 17
博文 16
码字总数 7322
评论 (4)
被占用
不错。学习啦,,,
开源中国首席公关
不错 赞一个!不改jar的修复BUG方式!
___Null

引用来自“彭大可”的评论

不错 赞一个!不改jar的修复BUG方式!
多谢,
superWing
必须给个赞
×
___Null
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: