• jsp版ueditor图片在线管理返回绝对路径


    引用:http://zhengyunfei.iteye.com/blog/2149979

    如果你有富文本编辑器的功能需要开发,我推荐你用百度的ueditor。本文将与你分享jsp版ueditor开发中遇到的一些问题。此次要说的版本是ueditor1_4_3-utf8-jsp,lib版本是ueditor1.1.1.jar。

    先附上ueditor源码和已经改过bug的jar包,急着用的就别看我废话了:

    第一:ueditor图片在线管理返回绝对路径,本来图片已经成功上传了,但是在线管理时却返回里绝对路径,如(D:projectshuoitxx.jpg)。自己研究了半天,开始以为是 config.json 配置的问题,最后才发现是jar包的bug....在这里我想说,百度你作为互联网老大,提供这么优秀的工具,竟然这种低智商错误,太遗憾了,如图:



     原来的函数,你可以用反编译工具看看,我们改成如图配置就好了,打包运行,就没问题了,如下图:



     第二:如果你的commons-io-2.4.jar太旧,比如我的以前是1.XX版,则上传图片又会报错,这是个小问题,删掉多余的jar包就好;

    第三:这个问题相当蛋疼,是关于struts2的,如果你的项目采用的struts2,你就要注意,你的文件上传不鸟,很大可能是struts2内置的上传过滤功能给你拦截了,解决方式是,自定义拦截器,如下代码:

    Java代码  收藏代码
    1. /** 
    2.  
    3.  * 自己定义struts过滤器,指定不对ueditor/jsp/目录下的jsp页面进行过滤 
    4.  
    5.  * @author zhengyunfei 
    6.  
    7.  */  
    8.   
    9. public class DiyStrutsFilter extends StrutsPrepareAndExecuteFilter{  
    10.   
    11.     @Override  
    12.   
    13.     public void doFilter(ServletRequest req, ServletResponse res,  
    14.   
    15.             FilterChain chain) throws IOException, ServletException {  
    16.   
    17.         HttpServletRequest request = (HttpServletRequest) req;  
    18.   
    19.         String url = request.getRequestURI();          
    20.   
    21.         if (url.contains("/ueditor/jsp/")) {              
    22.   
    23.             System.out.println("+++++++++++>> 使用自定义过滤器");    
    24.   
    25.             System.out.println("++++++++++++++++++++"+url+"++++++++++++++++++");  
    26.   
    27.             chain.doFilter(req, res);          
    28.   
    29.         }else{              
    30.   
    31.             super.doFilter(req, res, chain);          
    32.   
    33.         }  
    34.   
    35.     }  
    36.   
    37. }  
    38.   
    39.    
    40.   
    41. web.xml配置如下:  
    42.   
    43.    
    44.   
    45. <!-- 自定义struts2过滤器,避免struts2内置模块影响上传功能 -->  
    46.   
    47. <filter>  
    48.   
    49.     <filter-name>struts2</filter-name>  
    50.   
    51.     <filter-class>net.shuoit.javaweb.filter.DiyStrutsFilter</filter-class>  
    52.   
    53. </filter>  
    54.   
    55.    
    56.   
    57. <filter-mapping>  
    58.   
    59.     <filter-name>struts2</filter-name>  
    60.   
    61.     <url-pattern>/*</url-pattern>  
    62.   
    63. </filter-mapping>  

     以上是我使用过程中遇到的问题,欢迎与我交流。

  • 相关阅读:
    【转载】设计模式_单例模式(学习)
    【转载】设计模式_抽象工厂模式(学习)
    【转载】设计模式_工厂方法(学习)
    【转载】设计模式_六大原则(学习)
    【转载】设计模式_简单工厂模式(学习)
    java有用的启动参数
    linux freetds操作mssql
    ansible 控制windows
    nginx 版本介绍
    tar 压缩去除目录
  • 原文地址:https://www.cnblogs.com/jiftle/p/6410786.html
Copyright © 2020-2023  润新知