文档章节

jfinal+ueditor上传图片、文件报“未找到上传数据错误”的解决方案

陈俊凯
 陈俊凯
发布于 2016/03/24 00:39
字数 561
阅读 710
收藏 1

创建一个Ueditor的控制器UeditorController,代码如下:

public class UeditorController extends BaseController {

   private static Logger log = Logger.getLogger(UeditorController.class);
   
   public void index() {
      String webRoot = PathKit.getWebRootPath();
      String seprator = File.separator;
      String htmlText = new ActionEnter( getRequest(),  webRoot+ seprator ).exec();
      renderHtml(htmlText);
   }
   
}

配置该控制器的路由:

add("/b/ueditor", UeditorController.class);

修改ueditor.config.js文件中的配置:

//var URL = window.UEDITOR_HOME_URL || getUEBasePath();
var URL = cxt + "/jsFile/ueditor/";

注:这里的URL是ueditor存放在工程中的根目录

将config.json文件拷贝到webapp目录下的b文件夹下,如果没有,则创建。这一步为什么必须是这样的?这个跟你的ueditor路由配置有关,一开始我以为放在类路径下就可以找到该文件,自动加载,后来发现程序并未加载到该文件,看了源代码才发现它是根据请求的路径来加载的,所以,config.json文件存放的位置和ueditor的路由配置有关,比如:路由是 /b/ueditor,那么config.json文件就应该放在webapp(不一定,反正就是那几个:webapp、webcontent等等名字)下的b文件夹。


接着修改config.json配置,由于我的jfinal过滤器拦截所有的请求,也即/*配置,所以config.json中的xxxActionName我没去动,比如:

"imageActionName": "uploadimage",

接着,使用的时候,上传一张图片,出现“未找到上传数据”的错误,由于该错误信息是被编码了,所以没法在工程中搜到,后来找到Ueditor包下的Uploader类,跟到了BinaryUploader这个类的save方法,里面有段代码(41-46行):

(FileItemIterator e = upload.getItemIterator(request)e.hasNext()fileStream = ) {
    fileStream = e.next()(!fileStream.isFormField()) {
        }
}

我发现这个e对象总是为空,百度了一大堆,结果都不靠谱,研究了半天,想起有可能是Ueditor控制器被拦截器处理过了的原因,接着我就在UeditorController这个类上加了去除拦截器的代码:

@Clear
UeditorController BaseController {

,重启,发现正常了。终于解决了这个蛋疼的问题。

描述可能不太清楚,但还是希望可以帮到一些人,如有疑问,请与我联系。

© 著作权归作者所有

陈俊凯
粉丝 5
博文 61
码字总数 33848
作品 0
厦门
私信 提问
ueditor1.3.6jsp版在struts2应用中上传图片报"未找到上传文件"解决方案

在struts2应用中使用ueditor富文本编辑器上传图片或者附件时,即使配置好了上传路径信息,也会出现"未找到上传文件"的错误提示,出先该问题的原因是:在配置struts过滤器,过滤路径设置/*方式...

Jialy
2014/03/21
21.4K
16
Ls.c/vue-patient

安装 项目地址:(使用) git clone https://github.com/leson1986/vue-patient.git # 安装依赖模块npm install # 启动服务npm run dev # 发布代码npm run build 开发 目录结构 .├── READ...

Ls.c
2016/12/20
0
0
ueditor上传大容量视频报http请求错误的解决方法

故障现象: 当使用百度编辑器ueditor上传大容量视频或大容量图片的时候,编辑器报“http请求错误”的解决方法详解; 原因分析: 目前很多CMS整合了百度的ueditor编辑器,但是上传稍微大一点的...

luminji
2015/11/01
0
0
【转】jquery文件上传插件uploadify在.NET中session丢失的解决方案

基于jQuery和Flash的多文件上传插件uploadify的确很好用,具体配置和使用方法见以前的一篇文章:《一款基于jQuery的文件上传插件(.NET版)》。但今天在用这个插件的时候遇到了一个非常头痛的问...

酱哥哥
2012/06/07
2.8K
0
微信开发的一些问题

1、Android微信不支持flex布局: 参考:http://segmentfault.com/q/1010000003409405 提供的解决办法无非两种: a)新版webkit和旧版webkit混合flex写法; b)flex子元素需要displ:block; 本人...

Reya滴水心
2016/01/07
248
0

没有更多内容

加载失败,请刷新页面

加载更多

VMware vSphere ESXi主机的访问控制

在vShpere中,访问ESXi主机的途径很多,如下: ESXi DCUI ESXi Shell ESXi SSH ESXi Host Client vCenter --> vSphere web client / vSphere Client VMware vSphere ESXi主机的访问控制,除了......

大别阿郎
40分钟前
4
0
大神讲解CGI、FastCGI和PHP-FPM关系图解

参考资料 概念了解:CGI,FastCGI,PHP-CGI与PHP-FPM:http://www.nowamagic.net/librarys/veda/detail/1319 php中fastcgi和php-fpm是什么东西:https://www.zybuluo.com/phper/note/50231 ......

网络小虾米
49分钟前
5
0
《DNS攻击防范科普系列3》 -如何保障 DNS 操作安全

引言 前两讲我们介绍了 DNS 相关的攻击类型,以及针对 DDoS 攻击的防范措施。这些都是更底层的知识,有同学就来问能否讲讲和我们的日常操作相关的知识点,今天我们就来说说和我们日常 DNS 操...

Mr_zebra
50分钟前
4
0
zk中ServerCnxn

实现接口Stats, Watcher 内部类 DisconnectReason CloseRequestException EndOfStreamException(流关闭) 属性 方法 getSessionTimeout 获取session失效时间 sendResponse 发送回复数据 se......

writeademo
55分钟前
4
0
如何将 Redis 用于微服务通信的事件存储

来源:Redislabs 作者:Martin Forstner 翻译:Kevin (公众号:中间件小哥) 以我的经验,将某些应用拆分成更小的、松耦合的、可协同工作的独立逻辑业务服务会更易于构建和维护。这些服务(也...

中间件小哥
58分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部