在jsp页面中无法使用UEditor 10

照着网上用了很多方法,都无法显示编辑器,求大神!!!... 照着网上用了很多方法,都无法显示编辑器,求大神!!! 展开
 我来答
从空去听8
2017-12-30 · TA获得超过7439个赞
知道大有可为答主
回答量:6907
采纳率:93%
帮助的人:5484万
展开全部

开发工具:MyEclipse10

UEditor版本:1.4.3,UTF-8

主要是讲本人遇到的问题,使用步骤就只粗略地讲一下了。

1.  将从官网下载的UEditor解压之后复制到Web工程的WebRoot目录下,记得把ueditor/jsp/lib/中的jar包复制到WebRoot/WEB-INF/lib/中。

引入之后可能回出现各种错误提示,基本不影响使用,可以右击ueditor文件夹,选择MyEclipse>Manage Validation...,在Excluded Resources中将ueditor文件夹选中,这样编译器就不会去检查ueditor文件夹中的代码了。

2.  在JSP页面上引用UEditor的JS文件。

[html] view plain copy

  • <script type="text/javascript" charset="utf-8" src="ueditor/ueditor.config.js"></script>  

  • <script type="text/javascript" charset="utf-8" src="ueditor/ueditor.all.min.js"></script>  

  • <script type="text/javascript" charser="utf-8" src="ueditor/lang/zh-cn/zh-cn.js"></script>  

  • 3.  在body当中放置UEditor。

    [html] view plain copy

  • <div>  

  • <span style="white-space:pre;"> </span><script id="ueditor" type="text/plain">初始化内容</script>  

  • <div>  

  • 4.  实例化UEditor。

    [html] view plain copy

  • <script>  

  • <span style="white-space:pre;"> </span>var ue = UE.getEditor("ueditor");  

  • </script>  

  • 完成以上4步就可以在页面中看到UEditor了,下面讲具体遇到的问题。

    1.  乱码问题

    UEditor内容提交到后台之后就乱码了。

    前后台编码统一这个就不提了,笔者项目当中都是用的UTF-8编码。讲到这里顺便说一下,下载的UEditor是UTF-8版本,如果开发工具没有设置成UTF-8编码,UEditor中的中文注释就变成乱码了。右击Web工程,点击Properties,就可以在Resource中设置编码。

    言归正传,我乱码的原因在于form没有设置为POST。改一下method就可以不会出现乱码了。

    [html] view plain copy

  • <form action="#" method="POST">  


  • 2.  java.lang.NoSuchMethodError

    UEditor上传文件之后出现的错误,没有找到上传文件的方法。

    这是由于UEditor1.4.3用来上传文件的jar包是commons-io-2.4.jar,而服务器却用了一个老版本的jar包,在tomcat\webapps\中找到部署的项目,从WEB-INF\lib\目录中删除老版本的jar包即可。

    3.  上传文件之后提示找不到上传数据。

    我使用的Struts2框架,Request当中有关文件的请求被拦截了,自己写个拦截器放过UEditor就可以了。

    首先新建一个过滤器类。

    [java] view plain copy

  • 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 FilterForUeditor extends StrutsPrepareAndExecuteFilter {  

  • public void doFilter(ServletRequest req, ServletResponse res,  

  • FilterChain chain) throws IOException, ServletException {  

  • HttpServletRequest request = (HttpServletRequest) req;  

  • String url = request.getRequestURI();  

  • //      不过滤UEditor的请求  

  • if (url.contains("/employment/ueditor/")) {  

  • //          System.out.println("使用自定义的过滤器" + url);  

  • chain.doFilter(req, res);  

  • } else {  

  • //          System.out.println("使用默认的过滤器");  

  • super.doFilter(req, res, chain);  

  • }  

  • }  

  • }  

  • 然后在web.xml当中将struts2的过滤器注释掉,加上刚刚自定义的过滤器。

    [html] view plain copy

  • <filter>  

  • <filter-name>struts2</filter-name>  

  • <!-- Struts2的过滤器 -->  

  • <!--   

  • <filter-class>  

  • org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter  

  • </filter-class>  

  • -->  

  • <!-- 自定义的过滤器 -->  

  • <filter-class>com.myFilter.FilterForUeditor</filter-class>  

  • </filter>  

  • 重新运行网站即可成功上传文件。

    4.  成功上传附件之后,点击附件链接却出现404错误。

    在ueditor/jsp/lib/当中找到config.json,在文件访问路径前缀中写上自己部署的Web工程名称。

    [html] view plain copy

  • "fileUrlPrefix": "/projectName", /* 文件访问路径前缀 */  





  • 阅读全文

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式