struts2.x加入百度ueditor在线编辑框

这几天国庆放假,在家看了一下小东西,百度的ueditor在线编辑器,感觉还是不错的,有很多的语言版本可供选择,还可以定制功能,但是与java web开发中结合中还是遇到了点小小问题,这里记录一下。

我用的是1.4.3版本,通过个人需要定制的版本

一、新建java web项目:

新建java web项目,建好之后,把下载好的ueditor包解压,并把目录下\jsp\lib文件夹下的jar包都拷贝到新建项目lib文件夹下,并把这些包导入项目中。

之后,在项目WebRoot文件夹下创建ueditor文件夹,之后,把解压的文件全部拷贝到WebRoot/ueditor文件夹下。

二、处理报错并修改配置文件:

这时拷贝完文件后,有的js或者jsp文件会报错,而且在我这里config.json文件也会报错,解决方法是选择报错的文件,鼠标右键,选择Myeclipse--->Exclude From Validation之后再选择Run Validation就可以了。

处理之后打开config.json,找到"imageUrlPrefix"属性,并把属性值配置格式为"http://[projectIP]:[prot]/[projectName]"的内容,在这里我的是"http://localhost:8080/AppBugManager"

这是配置图片上传后的访问路径,如果不配置,上传完图片就不能访问到了。

三、加入struts2.x的支持:

通过上面的处理,访问项目下的ueditor/index.html就可以查看demo了,并且可以上传图片,接下来我们加入struts2.x的架包,注意的是!注意哦!如果项目中需要使用到两个相同的架包,name剔除掉旧版本的留下新版本的。ueditor提供了commons-fileupload-1.3.1和commons-io-2.4的架包,这两个架包都比struts2.x提供的比较新,所以要剔除struts2.x中的这连个架包的旧版本,ok这样就没有问题了

四、自定义struts2.x拦截器:

加入struts2.x后,在去访问ueditor/index.html后竟然不能上传图片了,这是因为,struts2.x的默认拦截器把图片上传给拦截了,所以我们需要自定义一个拦截器,如果是ueditor上传图片我们就放行,如果是平常的访问,我们就让其通过struts2.x的拦截器:

代码如下:

MyStrutsFilter.java

package com.appTest.Filter;

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 MyStrutsFilter extends StrutsPrepareAndExecuteFilter{
	
	public void doFilter(ServletRequest req, ServletResponse res,FilterChain chain) throws IOException, ServletException {
        HttpServletRequest request = (HttpServletRequest) req;
        //不过滤的url
        String url = request.getRequestURI();
        System.out.println(url);
        if (url.contains("/AppBugManager/ueditor/jsp/")) {
            System.out.println("使用自定义的过滤器");
            chain.doFilter(req, res);
        }else{
            System.out.println("使用默认的过滤器");
            super.doFilter(req, res, chain);
        }
    }
	
}
其中那个路径要配置为/[projectName]/ueditor/jsp/

之后修改web.xml文件,把之前的struts2.x的拦截器配置剔除,加入我们之定义的拦截器配置:

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>AppBugManager</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  
  <filter>
  	<filter-name>struts2</filter-name>
  	<filter-class>
  		com.appTest.Filter.MyStrutsFilter
  	</filter-class>
  </filter>
  <filter-mapping>
  	<filter-name>struts2</filter-name>
  	<url-pattern>/*</url-pattern>
  </filter-mapping>
  
  
</web-app>

OK,经过上面的处理ueditor就可以在struts2.x的项目中使用了!

源码下载地址:http://download.csdn.net/detail/yezis/8008473

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值