做1个新系统,有1个文章管理的模块,文章是图文的情势。图片管理1直没找到好的控件,看到了UEditor,再1看,百度的,果断试1下,对着文档部署了1个环境,发现图片部份有各种问题:
最后发现,UEditor是很硬朗的,其实各种问题都是配置的问题。
在图片上传这1部份遇到几个问题:
1)图片没法上传,提示无效的Action
2)图片没法回显
3)图片上传以后,上传目的文件夹没有文件
第1个问题是我把config.json文件中的
"imageActionName": "uploadimage", /* 履行上传图片的action名称 */
这个uploadimage改了,改成我自己写的1个处理上传文件的spring mvc controller。后来1想,不对,在ueditor的jar包里有几个uploader相干的类和方法。然后我就又改回来了。
第2个问题是路径配置的问题
还是config.json文件
"imageUrlPrefix": "http://localhost:8080/ueditor", /* 图片访问路径前缀 */
"imagePathFormat": "/ueditor/jsp/upload/image/{yyyy}{mm}{dd}/{time}{rand:6}", /* 上传保存路径,可以自定义保存路径和文件名格式 */
这两个配置改掉,就能够了
第3个问题很简单但是弄了很久,其实还是路径的问题
弄好了上边两个问题以后,图片可以回显了,但是服务器上指定的文件夹就是没有,还发现在多图上传#在线管理功能里边,上传过几张图片,在这里就会显示几张空图,图片是全部白色。到这里,实在想不出缘由,就下了个ueditor.jar的源码,debug1下。导入ueditor.jar的源码,把WEB_INF/lib目录下的ueditor.jar删掉。包里面类的不多,命名也很简单明了,1下就找到了com.baidu.ueditor.upload.Uploader#doExec这个,debug到这个方法,看conf这个域的内容,发现rootPath所指的路径,忽然1切都明白了。
我测试是用eclipse javaee版本测试的,大家都知道eclipse在debug web项目时不是把项目拷贝到tomcat下面,myeclipse是拷贝到tomcat下面,所以文件在上传时,实际上是上传到了${workspace}.metadata.pluginsorg.eclipse.wst.server.core mp0wtpwebappsearthueditorjspuploadimage(这是我这边debug时的路径),所以ueditor在多图上传#在线管理时找不到文件的真实路径。
总结:ueditor使用方便,简单又强大,定制方便。可以1试。