`

FCKeditor在java web程序中的使用介绍

阅读更多
FCKeditor的使用
                                                     ++YONG原创,转载请注明
 
引:最近在做一个BLOG演示程序,用到了在线文本编辑器,以前一直用eWebEditor。后来发现FCKeditor是开源的,所以就转用这个了,这篇文章介绍了FCKeditor-2.4.3及FCKeditor.java-2.3.2的基本使用。
新发现:原来CSDN博客系统的在线文本编辑器用的也是FCKeditor。不过不太厚道,把人家的“关于”也去掉了.
 
一、FCKeditor介绍
FCKeditor 这个开源的HTML 文本编辑器可以让web 程序拥有如MS Word 这样强大的编辑功能。FCKeditor 支持当前流行的浏览器如IE 5.5+, Firefox 1.0+, Mozilla 1.3+与Netscape 7+等。基本上我们需要的编辑功能它都能够实现,包括粘贴word格式的文档,上传图片,设置图片与文字的各种格式,预览。最重要是它不但完全免费,而且是多国语言的,对中文的支持也非常好。
FCKeditor官方网址:http://www.fckeditor.net/。写此文档时的最新版本是2.4.3。下图中①为此开源包的主文件下载地址。
二、在JAVA项目中使用FCKeditor在线编辑器:
FCKeditor不能直接在JSP项目中使用,需要FCKeditor.java库的支持。FCKeditor.java是针对在JAVA中使用FCKeditor而开发的一套整合包(由Simone Chiaretta开发)。FCKeditor官方网址上提供了此包的下载,如上图②为此包的下载地址(当前最新版本是2.3)
1.  新建一个java web应用程序。
2. 解压FCKeditor_2.4.3.zip包:
将其中的 edit 文件夹挎贝到项目中的根目录下(下图中①),将其中的 fckconfig.js、fckeditor.js、fckstyles.xml、fcktemplates.xml 文件也挎贝到项目中的根目录下(下图中②)。
3.  解压 FCKeditor.java-2.3.zip 包:
将其中的 \web\WEB-INF\lib 下的两个 jar 文件挎贝到项目的WEB-INF\lib 目录下(下图③),把\src 下的 FCKeditor.tld 文件挎贝到项目的 WEB-INF目录下(下图④)。
4.  完成后的目录如下:
5.  上图⑤中的文件夹是为保存上传的图片、flash准备的。
6.  修改WEB-INF\web.xml文件:
加入FCKeditor的配置信息,如下:
<display-name>FCKeditor在线文本编辑器的使用配置</display-name>
    <servlet>
        <servlet-name>Connector</servlet-name>
        <servlet-class>
            com.fredck.FCKeditor.connector.ConnectorServlet
        </servlet-class>
        <init-param>
            <param-name>baseDir</param-name>
            <!-- 此为文件浏览路径 -->
            <param-value>/uploads/</param-value>
        </init-param>
        <init-param>
            <param-name>debug</param-name>
            <param-value>true</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet>
        <servlet-name>SimpleUploader</servlet-name>
        <servlet-class>
            com.fredck.FCKeditor.uploader.SimpleUploaderServlet
        </servlet-class>
        <init-param>
            <param-name>baseDir</param-name>
        <!-- 此为文件上传路径,需要在WebRoot 目录下新建 UserFiles 文件夹 -->
        <!-- 根据文件的类型还需要新建相关的文件夹 ImageFlash -->
            <param-value>/uploads/</param-value>
        </init-param>
        <init-param>
            <param-name>debug</param-name>
            <param-value>true</param-value>
        </init-param>
        <init-param>
            <!-- 此参数为是否开启上传功能 -->
            <param-name>enabled</param-name>
            <param-value>true</param-value>
        </init-param>
        <init-param>
            <param-name>AllowedExtensionsFile</param-name>
            <param-value></param-value>
        </init-param>
        <init-param>
            <!-- 此参数为文件过滤,以下的文件类型都不可以上传 -->
            <param-name>DeniedExtensionsFile</param-name>
            <param-value>       php|php3|php5|phtml|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|dll|reg|cgi
            </param-value>
        </init-param>
        <init-param>
            <param-name>AllowedExtensionsImage</param-name>
            <param-value>jpg|gif|jpeg|png|bmp</param-value>
        </init-param>
        <init-param>
            <param-name>DeniedExtensionsImage</param-name>
            <param-value></param-value>
        </init-param>
        <init-param>
            <param-name>AllowedExtensionsFlash</param-name>
            <param-value>swf|fla</param-value>
        </init-param>
        <init-param>
            <param-name>DeniedExtensionsFlash</param-name>
            <param-value></param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>Connector</servlet-name>
        <url-pattern>
        /editor/filemanager/browser/default/connectors/jsp/connector
        </url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>SimpleUploader</servlet-name>
        <url-pattern>
            /editor/filemanager/upload/simpleuploader
        </url-pattern>
    </servlet-mapping>
      
7.  在需使用FCKeditor的jsp页面中加入:
// 文件开头处加入
//要使用的地方加入(id=”content”为此组件的标识)
<FCK:editor id="content" basePath="/你的web应用程序名/"
imageBrowserURL="/你的web应用程序名/editor/filemanager/browser/default/browser.html?Type=Image&Connector=connectors/jsp/connector"
linkBrowserURL="/你的web应用程序名/editor/filemanager/browser/default/browser.html?Connector=connectors/jsp/connector"
flashBrowserURL="/你的web应用程序名/editor/filemanager/browser/default/browser.html?Type=Flash&Connector=connectors/jsp/connector"
imageUploadURL="/你的web应用程序名/editor/filemanager/upload/simpleuploader?Type=Image"
linkUploadURL="/你的web应用程序名/editor/filemanager/upload/simpleuploader?Type=File"
flashUploadURL="/你的web应用程序名editor/filemanager/upload/simpleuploader?Type=Flash"> </FCK:editor>
在java web程序中要获取此编辑器中编辑好的文本就用以下代码:
//注意这个"content"就是在<FCK:editor>中设置的id。
request.getParameter("content");
              另外,此标签的几个较常用的属性(其它属性的使用可看tld文件):
l         width="100%" :宽度,默认值为100%
l         height="200":高度,默认值是200
l         skinPath="skins/default/":工具条的皮肤。除了默认值,还有这两个值:skins/silver/和skins/office2003。
l         toolbarSet="Default":工具集名称,即出现在页面上的工具条上的工具按钮,参考fckconfig.js,默认值是Default。默认的工具集中很多的工具条都用不上。可以在fckconfig.js中添加自定义的工具集,如下:
FCKConfig.ToolbarSets["qiujyDefault"] = [
    ['Source','Templates'],
    ['Cut','Copy','Paste','PasteText','PasteWord'],
    ['Find','Replace','-','SelectAll','RemoveFormat','Table'],
    ['Bold','Italic','Underline','StrikeThrough','-','Subscript','Superscript','-','Outdent','Indent'],
    ['OrderedList','UnorderedList','JustifyLeft','JustifyCenter','JustifyRight','Link','Unlink'],
    ['TextColor','BGColor'],
    ['Image','Flash','Rule','Smiley','-','Form','Checkbox','Radio','TextField','Textarea','Select','Button','-','About'],
    ['Style','FontFormat','FontName','FontSize']
] ;
 
FCKConfig.ToolbarSets["qiujyBasic"] = [
    ['Bold','Italic','Underline','StrikeThrough','-','OrderedList','UnorderedList','Rule','-','JustifyLeft','JustifyCenter','JustifyRight','JustifyFull','-','Link','Unlink','-','TextColor','BGColor','-','Smiley','About']
] ;
 
8.  给FCKeditor瘦瘦身:
l         将FCKeditor目录下及子目录下所有以“_”下划线开头的文件夹删除
l         还可以将editor/skins目录下的皮肤文件删除,只留下default一套皮肤(如果你不需要换皮肤的话)
l         还可以将editor/lang目录下文件删除,只保留en.js, zh-cn.js, zh.js文件(英文,简体中文,繁体中文一般应该够用了)
9.  安全问题:
假如在前台让普通用户也能使用FCKEditor,要注意相关安全问题。在前台使用时,不要使用默认的工具集,可用如上自定义的工具集qiujyBasic即在jsp页面的<FCK:editor>上添加属性toolbarSet="qiujyBasic"。
 
分享到:
评论

相关推荐

    FCKEditor(Java)完整资料包

    内附FCKEditor源代码,及其应用于Java Web程序相关包,并包含使用示例

    《Java Web开发与实战--Eclipse+Tomcat+Servlet+JSP整合应用》.(刘伟,张利国).[PDF].zip

    主要内容包括web应用程序运行原理、主流集成开发工具(eclipse/myeclipse)和运行环境(tomcat)的配置和使用、servlet、jsp、jdbc、jsp表达式语言(el)、servlet监听器和过滤器、定制标记库、jstl、mvc模式、dao...

    fckeditor-java_src.rar_FCKeditor-2.3_fckeditor_fckeditor s_opera

    这个开源的HTML文本编辑器可以让Web程序拥有如MS Word这样强大的编辑功能. FCKeditor支持当前流行的浏览器如IE,Firefox,Netscape,Opera等戏中的坦克所遇到的障碍物主要有墙、炸弹(泡泡)。坦克的所到之处都可以留下...

    FCKeditor.Java 2.4 源代码

    这个开源的HTML文本编辑器可以让Web程序拥有如MS Word这样强大的编辑功能. FCKeditor支持当前流行的浏览器如IE,Firefox,Netscape,Opera等. Fixed Bugs: [#2412] FCK.InsertHtml() is now properly removing ...

    FCKEditor 2.6b for java jsp 修正版

    此版本已经包含FCKEditor用于java web application 时的jar包,且已经解决上传文件在中文路径或文件中文名称时的问题,附件上传后命名规则是 年-月-日-时-分-秒+毫秒加以当前时间time(long类型数据)为种子产生的随即数...

    HTML在线文本编辑器在Java web开发中的使用分析-以KindEditor为例.pdf

    随着java web程序应用开发的发展,出现了多种HTML在线文本编辑器(FCKeditor,xheditor,tinyMCE,CuteEditor,KindEditor,eWebEditor,UEditor),在网站的设计与制作过程中应用支持多种语言的在线文本编辑器可简化用户操作,...

    Java Web开发与实战:Eclipse+Tomcat+Servlet+JSP整合应用(含光盘源代码)

    主要内容包括web应用程序运行原理、主流集成开发工具(eclipse/myeclipse)和运行环境(tomcat)的配置和使用、servlet、jsp、jdbc、jsp表达式语言(el)、servlet监听器和过滤器、定制标记库、jstl、mvc模式、dao...

    FCKeditor2.4.2

    FCKeditor是一款功能强大的在线HTML编辑器,在博客日益兴盛的web2.0时代FCKeditor已经开始走向普通人的视线。 FCKeditor文本编辑程序(共享软件)为用户提供在线的文档编辑服务,其具有与微软office软件一样的功能...

    JSP版FCKeditor附最新Java开发包 v2.4

    这个开源的HTML文本编辑器可以让Web程序拥有如MS Word这样强大的编辑功能. FCKeditor支持当前流行的浏览器如IE,Firefox,Netscape,Opera等.

    在jsp环境中配置使用FCKEditor

    FCKeditor是sourceforge.net上面的一个开源项目,主要是实现在线网页编辑器的功能,可以让web程序拥有如MS Word这样强大的编辑功能。官方网站为http://www.fckeditor.net ,在服务器端支持ASP.Net、ASP、ClodFusion...

    JAVA上百实例源码以及开源项目

     Java非对称加密源程序代码实例,本例中使用RSA加密技术,定义加密算法可用 DES,DESede,Blowfish等。  设定字符串为“张三,你好,我是李四”  产生张三的密钥对(keyPairZhang)  张三生成公钥(publicKeyZhang...

    JAVA上百实例源码以及开源项目源代码

     Java非对称加密源程序代码实例,本例中使用RSA加密技术,定义加密算法可用 DES,DESede,Blowfish等。  设定字符串为“张三,你好,我是李四”  产生张三的密钥对(keyPairZhang)  张三生成公钥(publicKeyZhang...

    java开源包8

    LemonSMS 这个Java库可以让开发者在应用程序中集成使用GSM调制解调器或兼容电话来发送SMS消息。 远程桌面 Java Remote Desktop.tar Java Remote Desktop 是一个Java 的远程桌面软件,支持很多特性例如文件传输、...

    FCKeditorforjsp.rar_fckeditor

    FCKeditor是sourceforge.net上面的一个开源项目,主要是实现在线网页编辑器的功能,可以让web程序拥有如MS Word这样强大的编辑功能。在服务器端支持ASP.Net、ASP、ClodFusion、PHP、Java等语言,并且支持IE 5+、...

    java开源包11

    LemonSMS 这个Java库可以让开发者在应用程序中集成使用GSM调制解调器或兼容电话来发送SMS消息。 远程桌面 Java Remote Desktop.tar Java Remote Desktop 是一个Java 的远程桌面软件,支持很多特性例如文件传输、...

    java开源包4

    LemonSMS 这个Java库可以让开发者在应用程序中集成使用GSM调制解调器或兼容电话来发送SMS消息。 远程桌面 Java Remote Desktop.tar Java Remote Desktop 是一个Java 的远程桌面软件,支持很多特性例如文件传输、...

    java开源包6

    LemonSMS 这个Java库可以让开发者在应用程序中集成使用GSM调制解调器或兼容电话来发送SMS消息。 远程桌面 Java Remote Desktop.tar Java Remote Desktop 是一个Java 的远程桌面软件,支持很多特性例如文件传输、...

    Java Web应用详解.张丽(带详细书签).pdf

    第5章 Web程序运行原理 5.1 Web程序架构 5.2 Web服务器汇总 5.3 Web程序流程 5.4 Web应用程序开发 第6章 Servlet及其应用 6.1 Servlet 简介 6.2 Servlet 应用实例 6.3 HTML表单在Servlet中的应用 6.4 HTML...

    java开源包9

    LemonSMS 这个Java库可以让开发者在应用程序中集成使用GSM调制解调器或兼容电话来发送SMS消息。 远程桌面 Java Remote Desktop.tar Java Remote Desktop 是一个Java 的远程桌面软件,支持很多特性例如文件传输、...

Global site tag (gtag.js) - Google Analytics