http://blog.csdn.net/skyman1942/article/details/52537100

1、环境说明:

日期:2016-09-14

工具:ckeditor_4.5.11+ckfinder_java_2.6.2

环境:i5-3210m,8g ddr3,win10 x64,jdk1.8  x64

开发工具:eclipse neon x64(可能用到的web插件此处不再赘述)

 

2、工具包:

ckeditor_4.5.11_full.zip,ckfinder_java_2.6.2.zip,ckeditor-java-core-3.5.3.zip,三个压缩包都可在官网下载到。

3、把工具引入web工程

(1)ckeditor

ckeditor_4.5.11_full.zip 解压得到的 ckeditor 目录,它的结构如下:
把 ckeditor 复制到 web 工程下 WebContent 目录

(4)ckfinder

ckfinder_java_2.6.2.zip 解压,得到的目录里有个 CKFinderJava-2.6.2.war,解压这个 war 到某个目录下,它的结构如下:
把 ckfinder 目录复制到 web 工程下 WebContent 目录,
把 WEB-INF 目录下的 config.xml 复制到web工程下 WebContent/WEB-INF/ 目录下,并改名成 ckfinder.xml 以区别其他 xml 配置文件

(5)jar包引入

1)步骤(4)中 war 解压目录下,WEB-INF/lib 目录下的所有 jar 包复制到 web工程的 WebContent/WEB-INF/lib 目录;
2)ckeditor-java-core-3.5.3.zip 解压得到一个目录,ckeditor-java-core-3.5.3.jar 复制到 web工程的 WebContent/WEB-INF/lib 目录。
 
到这里, web 工程 WebContent 目录结构如下图:

(6)工具包精简(在工程中)

ckeditor:

lang 目录存放国际化文件,通常只保留 en.js 和 zh-cn.js ;

samples 目录存放的是实例,删除该目录;

3个 md 后缀的文件删除。

ckfinder:

_samples 目录删除;

help 目录删除;

lang 语言文件,保留 en.js 和 zh-cn.js;

4个 txt 文本删除。

(注意:还可以进一步精简,请参考其他教程)

4、配置 ckeditor 的 config.js 文件(在工程中)

打开 ckeditor 目录下的 config.js;

以下是一个参考,其中关于 ckfinder 的配置是必须的

  1. CKEDITOR.editorConfig = function( config ) {
  2. // Define changes to default configuration here. For example:
  3. // config.language = 'fr';
  4. config.uiColor = '#FF0000';
  5. /*
  6. config.toolbar_Full = [
  7. ['Source','-','Save','NewPage','Preview','-','Templates'],
  8. ['Cut','Copy','Paste','PasteText','PasteFromWord','-','Print', 'SpellChecker', 'Scayt'],
  9. ['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],
  10. ['Form', 'Checkbox', 'Radio', 'TextField', 'Textarea', 'Select', 'Button', 'ImageButton', 'HiddenField'],
  11. '/',
  12. ['Bold','Italic','Underline','Strike','-','Subscript','Superscript'],
  13. ['NumberedList','BulletedList','-','Outdent','Indent','Blockquote'],
  14. ['JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock'],
  15. ['Link','Unlink','Anchor'],
  16. ['Image','Flash','Table','HorizontalRule','Smiley','SpecialChar','PageBreak'],
  17. '/',
  18. ['Styles','Format','Font','FontSize'],
  19. ['TextColor','BGColor']
  20. ];
  21. */
  22. //取消编辑框拖拽缩放
  23. config.resize_enabled=false;
  24. filebrowserBrowseUrl = '/ckfinder/ckfinder.html';
  25. filebrowserImageBrowseUrl = '/ckfinder/ckfinder.html?type=Images';
  26. filebrowserFlashBrowseUrl = '/ckfinder/ckfinder.html?type=Flash';
  27. filebrowserUploadUrl = '/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Files';
  28. filebrowserImageUploadUrl = '/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Images';
  29. filebrowserFlashUploadUrl = '/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Flash';
  30. };

5、配置 ckfinder.xml

打开 WEB-INF 目录下的 ckfinder.xml。

1)<enabled>true</enabled>,true表示开启cfinder。

2)<baseURL>http://localhost:8080/model2message/upload/</baseURL>,这个标签指定上传文件的存放目录,

tomcat服务器访问地址 + 工程名 + 接收文件夹+"/",我在项目的发布路径下创建了一个 upload 目录,所以是这个访问路径。

3)用户访问权限的设置在 accessControls 标签下,

  1. <accessControls>
  2. <accessControl>
  3. <role>*</role>
  4. <resourceType>*</resourceType>
  5. <folder>/</folder>
  6. <folderView>true</folderView>
  7. <folderCreate>true</folderCreate>
  8. <folderRename>true</folderRename>
  9. <folderDelete>false</folderDelete>
  10. <fileView>true</fileView>
  11. <fileUpload>true</fileUpload>
  12. <fileRename>true</fileRename>
  13. <fileDelete>false</fileDelete>
  14. </accessControl>
  15. </accessControls>

6、配置 web.xml

可以参考步骤 3-(4)中war的解压目录下的 WEB-INF 目录下的 web.xml,

  1. <servlet>
  2. <servlet-name>ConnectorServlet</servlet-name>
  3. <servlet-class>com.ckfinder.connector.ConnectorServlet</servlet-class>
  4. <init-param>
  5. <param-name>XMLConfig</param-name>
  6. <span style="color:#ff0000;"><param-value>/WEB-INF/ckfinder.xml</param-value><!--ckfinder.xml是config.xml改名之后--></span>
  7. </init-param>
  8. <init-param>
  9. <param-name>debug</param-name>
  10. <param-value>false</param-value>
  11. </init-param>
  12. <load-on-startup>1</load-on-startup>
  13. </servlet>
  14. <servlet-mapping>
  15. <servlet-name>ConnectorServlet</servlet-name>
  16. <url-pattern>/ckfinder/core/connector/java/connector.java</url-pattern>
  17. </servlet-mapping>

7、在 jsp 页面上使用

这里使用标签创建。

<%@ taglib uri="http://ckeditor.com" prefix="ce"%>
<%@ taglib uri="http://cksource.com/ckfinder" prefix="cf"%>

注意ckfinder标签要放在ckeditor标签之前。

<cf:setupCKEditor editor="ed1" basePath="/model2message/ckfinder/" />
<ce:editor editor="ed1" basePath="/model2message/ckeditor/"></ce:editor>

注:以上简单配置,需要实现更多功能,请参考其他教程,感谢留言。

 

ckeditor4.5.11+ckfinder_java2.6.2配置的更多相关文章

  1. HPUX 11.31 MC-SG SGeRAC配置

    HPUX 11.31 MC-SG SGeRAC配置 环境: 系统版本号 hp-unix 11.3v2 1503 serviceguard extension版本号 T1907 实施 1. 磁盘空间划分 ...

  2. hive0.11的编译/安装/配置

    一.获取hive 0.11文件 1.直接在apache网站下载release版 2.自己下载源码编译.方法: git clone https://github.com/amplab/hive.git ...

  3. vs2013+opencv2.4.11+Qt5.5.1配置

    注意本教程配置环境:win7 32位 如果只配置vs2013+opencv2.4.11,参考http://jingyan.baidu.com/article/ff411625b1311a12e4823 ...

  4. redis-3.2.11哨兵模式的配置

    设置内核参数: echo never > /sys/kernel/mm/transparent_hugepage/enabled > /proc/sys/vm/overcommit_mem ...

  5. MySQL Community Server 8.0.11下载与安装配置

    一.下载 1.选择合适的安装包,我在这里下载的是目前最新的安装包,8.0.11,而且我选择下载的是解压版的,安装版的话,安装会比较麻烦. MySQL Community Server下载链接:http ...

  6. Oracle HA 之 oracle 11.2 rac库配置active dataguard

    目录 configing active dataguard for 11.2 rac. 1 一.建组.建用户.配置环境变量.内核参数等... 1 二.配置共享磁盘... 3 1)创建4块共享磁盘并fd ...

  7. MySQL 8.0.11(zip)安装及配置

    (1)下载MySQL8.0.11: (2)解压zip文件: 我解压到了D:/MySQL/mysql-8.0.11-winx64 (3)配置环境变量:   右键此电脑->属性 高级系统设置 环境变 ...

  8. Qt5.11+opencv3.4的配置安装

    系统:Windows 10 64位 前期准备: 1.CMake下载安装 下载地址:https://cmake.org/download/ 选择msi安装文件,按照提示一步一步按照就好 可以参考:htt ...

  9. 11.IntelliJ IDEA详细配置和使用教程(适用于Java开发人员)

    转自:https://blog.csdn.net/chssheng2007/article/details/79638076 前言 正所谓工欲善其事必先利其器,对开发人员而言若想提高编码效率,一款高效 ...

随机推荐

  1. out.println(session.getLastAccessedTime());的返回值到底是毛线意思???

    out.println(session.getLastAccessedTime());这个语句是输出最后一次成功获取session对象Attribute值的一个指令, 他的返回值是一个long型数据, ...

  2. [C++] STL相关面试题

    (1) 为何map和set的插入删除效率比用其他序列容器高? 因为map和set的内部数据结构是红黑树,它的插入和删除不需做内存的拷贝和移动.(红黑树的插入和删除是log(n)的). (2) 为何每次 ...

  3. JAVA获取时间的方式

      1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 ...

  4. c语言define和typedef区别和使用

    define完全可以理解替换,typedef代表别名.听着差不多的意思,那2者区别在哪? 先来个简单例子查看基本使用. //define和typedef区别 #define DB double //替 ...

  5. An interview question from MicroStrategy

    去年校招时的一道面试题,觉得蛮有意思,贴出来. Question: Spy start at a, during an interval he moves |b| to right when b &g ...

  6. 如何用Python实现常见机器学习算法-4

    四.SVM支持向量机 1.代价函数 在逻辑回归中,我们的代价为: 其中: 如图所示,如果y=1,cost代价函数如图所示 我们想让,即z>>0,这样的话cost代价函数才会趋于最小(这正是 ...

  7. Oracle学习笔记(十二)

    十三.存储过程和存储函数1.掌握存储过程(相当于建立一个函数或者方法体,然后通过外部对其调用) 指存储在数据库中供所有程序调用的子程序叫做存储过程或存储函数. 相同点: 完成特定功能的程序 区别: 是 ...

  8. thinkphp ajax分页加载更多最简单的实现方法

    <div class="li_list"> <volist name="list" id="vo"> <div ...

  9. 加载 bean.xml 的几种方式 (java or web project)

    1. java project ApplicationContext ctx = new ClassPathXmlApplicationContext("classpath:bean1.xm ...

  10. CSS实现图片阴影效果

    <title>无标题文档</title> <style type="text/css"> /*方法一:使用一个GIF文件的方法*/ .gifsh ...