最近有个maven项目需要搭建可编辑帮助中心的需求,使用到了百度富文本编辑器ueditor,过程中踩了不少坑,记录一下。
1.富文本框不显示问题
这里首先有个小问题,我在公司的测试机上发布,但就是获取不到css,js的静态资源,后来才知道静态资源和项目是在不同机器上,需要手动上传。上传到正式环境就可以了。(这问题我纠结了好久好久。。。无奈)
把ueditor几个文件js,css拷到webapp下,但是不管怎么调试,ueditor都不出现的问题,结果发现是ueditor包下的内容没有拷全,需要把以下utf8-jsp文件夹里的全部内容拷上去才会出现富文本框.
2.Controller.jsp报500,空指针,jsonObject报异常问题
接下来的一系列问题基本都围绕着controller.jsp、config.json这两个文件
在把富文本框搞出来以后,controller.jsp开始报异常,查询日志后发现是jsonObject报错,空指针了,追踪了下发现是ueditor包里初始化 ActionEnter 的过程中的 inEnvir 方法用到了jsonObject.
但是项目中本来是有引入fastjson包的,jsonObject应该是可以用的
看了下包名,原来之前引入的是阿里的json包,而这里需要引入另一个json包,org.json的
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20160212</version>
</dependency>
<dependency>
<groupId>com.baidu.ueditor</groupId>
<artifactId>ueditor</artifactId>
<version>1.1.2</version>
</dependency>
引入后重新发布,controller.jsp的500错误就解决了
3.上传配置项不正确,无法上传图片问题
这个主要是因为controller.jsp的问题,需要修改一下controller.jsp
这里直接在controller.jsp进行上传了,就不跳转到配置文件config.json里了
<%
Logger logger = Logger.getLogger("controller.jsp");
logger.biz("[controller.jsp]: start to upload fi