ue和ssh结合使用经验说明

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.首先 下载ueditor 之后 解压修改文件夹名字为ueditor;把文件夹整体复制到项目中的 WebRoot下,然后在该目录ueditor/jsp/lib下
把里面的jar都拖动到自己项目下的lib下 这个lib文件夹可以删除

2.jsp界面上引用
--引入ueditor的js文件




--设置内容


--至于表单提交等 就不贴了
============================================
3.因为struts2是有拦截器的,所有它会拦截我们的上传图片、文件之类的操作 导致无法上传,所有解决办法是自己写一个过滤器

(1)自己写过滤器的代码
package com.weiz.filter;
import javax.servlet.ServletException;
import java.io.IOException;
import javax.servlet.FilterChain;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter;

/**
* UEditor整合进去后上传图片时会提示“未找到上传数据”,
* 后来发现是Struts2框架的问题,
* 因为Struts2框架自身的过滤器会对request进行处理,
* 导致上传失败,所以需要自己写一个过滤器,如果 chain.doFilter(req, res);报错 说明io的jar冲突
* @author Think
*
*/
public class MyStruts2Filter extends StrutsPrepareAndExecuteFilter {

public void doFilter(ServletRequest req, ServletResponse res,FilterChain chain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) req;
//不过滤的url
String url = request.getRequestURI();
String contextPath=request.getContextPath();
HttpServletResponse response = (HttpServletResponse) res;
System.out.println(url);
if (url.endsWith("controller.jsp")) {
System.out.println("使用自定义的过滤器");
chain.doFilter(req, res);
}else{
System.out.println("使用默认的过滤器");
super.doFilter(req, res, chain);
}
}
}

(2)修改web.xml中一起的过滤器的信息

InformationBulletin

struts2
com.weiz.filter.MyStruts2Filter


struts2
/*

也就是把以前的org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter修改成

com.weiz.filter.MyStruts2Filter(自己过滤器的类)
=============================================================
4.修改ueditor里的confi.json里的相关信息(如果不修改 图片只显示名字)
"imageUrlPrefix": "/InformationBulletin", /* 图片访问路径前缀 */ 默认"imageUrlPrefix": 是空的 修改成你的项目名字 即:"/InformationBulletin"
注:是所有的"XXXUrlPrefix": XXX开头的属性都修改 要不然 别的功能也会无法使用

=========================================================================
5. 这就大功告成了,但是有几个错误点需要大家记住
(1).jar冲突 这个问题差点没搞死我。因为我刚配置之后,老是报错:
Servlet.service() for servlet jsp threw exception
ng.NoSuchMethodError: mons.io.FileUtils.getTempDirectory()Ljava/io/File;
最后发现是io的jar冲突 是myeclipse提供的commons-io-1.2版本和ueditor提供给的commons-io-2.4冲突 解决办法很简单。
就是删除低版本的。可是如果你的项目里的所有jar没放在lib下 那只能在tomcat(或者别的)里找到所有jar 全部复制出来,
然后删除ssh中myeclipse自带引入的路径即可,即删除build path;然后把复制的那份扔到lib下 之后删除低版本即可

(2)上面说过了 必须配置confi.json 要不然只显示图片名字的。

我用的版本是uditor 1.4.3 ssh是struts2.2 spring3.1 Hibernate4



6.如何要取消工具栏里的某些功能,打开ueditor.config.js 找到toolbars 注释掉不要的功能单词即可

==================================================================================================
7.注意事项:
如果你用的是ueditor-1.1.3.jar的话 就不需要修改confi.json里的信息。最好使用最新版本的 ueditor-1.1.1.jar 在上图图片以及附件的时候,会有bug。这个bug就是 上传的时候用的相对路径 在线附件和图片管理中是用的绝对路径 。

相关文档
最新文档