关于SSH与百度ueditor整合的时候出现的问题
来源:互联网 发布:知乎中文夹杂英文 编辑:程序博客网 时间:2024/06/15 15:23
- ueditor的组件被struts2拦截下来导致ueditor不可用
- 检查项目中是否使用了urlrewrite来重写url,这会导致ueditor资源被重定向,导致不可用
- struts2本身的过滤器也会过滤ueditor的部分组件
通过浏览器调试可以看到ueditor需要的组件会报404错误,然后根据所报错的组件定位是被谁拦截了
第一种情况,如果是urlrewrite则修改转发规则,或直接注释掉。
第二种情况,需要重写自定义的过滤器,方法如下:
import java.io.IOException;import javax.servlet.http.HttpServletRequest;import org.apache.struts2.dispatcher.multipart.JakartaMultiPartRequest;public class RequestParseWrapper extends JakartaMultiPartRequest { public void parse(HttpServletRequest servletRequest, String saveDir)throws IOException { }}
struts中加上这个bean
<bean type="org.apache.struts2.dispatcher.multipart.MultiPartRequest" name="myRequestParser" class="net.jeeshop.core.util.RequestParseWrapper" scope="default" optional="true" /> <constant name="struts.multipart.handler" value="myRequestParser" />
import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.http.HttpServletRequest;import org.apache.struts2.dispatcher.StrutsRequestWrapper;public class UeditorFilter implements Filter { @Override public void init(FilterConfig filterConfig) throws ServletException { } @Override public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException { HttpServletRequest request = (HttpServletRequest) req; String url = request.getRequestURI(); if (decideURI(url)) { chain.doFilter(new StrutsRequestWrapper((HttpServletRequest) req), res); }else{ chain.doFilter(req, res); } } @Override public void destroy() { } private boolean decideURI(String url){ if(url.endsWith("controller.jsp")) { // 主要是ueditor的这个请求被struts2拦截了,自定义过滤器中将本请求放行即可正常使用ueditor return true; } return false; }}
在web.xml中struts2的过滤器前加上这个自定义的过滤器即可
<filter><filter-name>ueditorFilter</filter-name><filter-class>net.jeeshop.core.util.UeditorFilter</filter-class></filter><filter-mapping><filter-name>ueditorFilter</filter-name><url-pattern>*.jsp</url-pattern></filter-mapping>
其实还有一个问题会导致ueditor不可用,就是jar包冲突,解决办法就是以你下载的ueditor里面的jar包版本为主,其他版本的jar包删除即可。
0 0
- 关于SSH与百度ueditor整合的时候出现的问题
- springMVC与百度UEditor的整合
- 百度富文本ueditor使用 以及 与 Struts2 整合时出现的问题解决
- 关于springboot与ueditor的整合。
- grails整合百度的UEditor
- ssh整合出现的问题
- ssh 整合出现的问题
- 关于第一次整合SSH完运行出现的问题
- 百度UEDITOR与ASP.NET上传整合的简要教程
- 关于SSH整合的问题
- SSH框架整合时出现问题的反思与总结
- ssh框架整合的时候出现Unable to load configuration问题、getHibernateTemplate().save空指针
- 整合ssh的时候出现空指针java.lang.NullPointerException
- ssh框架整合中出现的问题
- SSH整合时出现的问题
- SSH整合过程出现的问题
- SSH整合出现的一些问题
- 关于百度Ueditor的图片配置问题以及初步体验
- 8086汇编贪吃蛇(随机食物+速度递增)
- Mybatis参数为对象中包含list情况处理
- 获取SpringMVC中所有RequestMapping映射URL地址
- jQuery mouseover与mouseenter,mouseout与mouseleave的区别
- DICOM VR (Value Representations)表
- 关于SSH与百度ueditor整合的时候出现的问题
- 如何做滚动加载?移动端下拉加载新的页面
- php 写内容到文件,把日志写到log文件
- Mysql学习总结(41)——MySql数据库基本语句再体会
- 实战录 | Spring中bean的生命周期
- spring @conditional注解的使用
- part 27- Customizing the autogenerated index view
- android ContentProvider详解
- input file控件限制上传文件类型