当前位置: 首页 > 工具软件 > FCKeditor > 使用案例 >

fckeditor配置

杜河
2023-12-01

JAVA中FCKeditor编辑器的使用与配置

 

工作前的准备

版本是FCKeditor_2.4.2.zip【组件的主文件包】,FCKeditor.Java 2.3.zip【这里面提供了标签库和图片上传的jar】。这些都可

以在http://www.fckeditor.net 网站下载到!

配置

1. 新建工程compass,在WebRoot文件夹下新建文件夹FCKeditor(用来存放FCKeditor相关文件,

记得大小写要一致,因为如果你需要改变的话变化的文件比较多,而且还不确定是否改全了)

2. 将FCKeditor_2.4.2包中的 editor 文件夹和fckconfig.js、fckeditor.js、fckstyles.xml、fcktemplates.xml

这四个文件放到项目中的 FCKeditor 目录。

3. 将FCKeditor.Java -2.3.zip 包中的 /web/WEB-INF/lib 下的两个 jar 文件到项目的 WebRoot/WEB-INF/lib目录下

4. 将FCKeditor.Java -2.3.zip 包中的 /src 下的 FCKeditor.tld 文件到项目的 WebRoot/WEB-INF 目录

5. 在 WebRoot 目录下新建 UserFiles 文件夹,在此文件夹下新建 Image、 Flash 、File、Media四个文件夹 ,他们分别用来存

放上传的图片、动画、文件、媒体文件

6. 修改fckconfig.js组件配置文件【说明一下,你可以在配置文件里搜索等号前面的信息来确定某一项做更改】:

A、FCKConfig.SkinPath = FCKConfig.BasePath + 'skins/silver/' ;

这是组件的样式模板,好确定你到底需要使用哪中样式,这个根据你自己的喜好更改,

B、FCKConfig.DefaultLanguage = 'zh-cn' ;

这个是确定你需要使用哪中语言,设定成上面的表示使用简体中文;

C、更改文件浏览的路径:

FCKConfig.LinkBrowserURL = FCKConfig.BasePath + "filemanager/browser/default/browser.html?

Connector=connectors/jsp/connector" ;
FCKConfig.ImageBrowserURL = FCKConfig.BasePath + "filemanager/browser/default/browser.html?

Type=Image&Connector=connectors/jsp/connector" ;
FCKConfig.FlashBrowserURL = FCKConfig.BasePath + "filemanager/browser/default/browser.html?

Type=Flash&Connector=connectors/jsp/connector" ;
把相应的信息屏蔽掉,使用上面的

D、更改上传文件的路径

FCKConfig.LinkUploadURL = FCKConfig.BasePath + 'filemanager/upload/simpleuploader?Type=File' ;
FCKConfig.FlashUploadURL = FCKConfig.BasePath + 'filemanager/upload/simpleuploader?Type=Flash' ;
FCKConfig.ImageUploadURL = FCKConfig.BasePath + 'filemanager/upload/simpleuploader?Type=Image' ;
把相应的信息屏蔽掉,使用上面的

7. 修改 web.xml 文件,加入以下内容 :

在FCKeditor.Java -2.3.zip 包中有个web/WEB-INF/WEB.XML,把这个节点里面的内容复制到你的工程里面的相应的位置,值得说明

的地方是:

<servlet-name>Connector</servlet-name>
    <servlet-class>com.fredck.FCKeditor.connector.ConnectorServlet</servlet-class>
    <init-param>
     <param-name>baseDir</param-name>
<!-- 此为文件浏览路径,可以只有选择修改,但切记不可改成“/[工程名]/UserFiles/”
因为他目前已经是在工程的根目录下来运行的,故如果要把默认浏览的文件目录为
webroot/upload目录,之需要改变成:/upload/,即可 -->
     <param-value>/UserFiles/</param-value>
    </init-param>
    <init-param>
<servlet-name>SimpleUploader</servlet-name>
    <servlet-class>com.fredck.FCKeditor.uploader.SimpleUploaderServlet</servlet-class>
    <init-param>
     <param-name>baseDir</param-name>
<!-- 此为文件上传路径,可以只有选择修改,但切记不可改成“/[工程名]/UserFiles/”
因为他目前已经是在工程的根目录下来运行的,故如果要把上传的文件放到webroot/upload目录下,
之需要改变成:/rpload/,即可 -->
     <param-value>/UserFiles/</param-value>
    </init-param>
    <init-param>
     <param-name>debug</param-name>
     <param-value>true</param-value>
    </init-param>
    <init-param>
<!-- 记得要改变这里,把FALSE改变成TRUE,这个是是否启用上传功能 -->
     <param-name>enabled</param-name>
     <param-value>true</param-value>
    </init-param>
      <servlet-mapping>
      <servlet-name>Connector</servlet-name>
      <url-pattern>
       /FCKeditor/editor/filemanager/browser/default/connectors/jsp/connector
      </url-pattern>
    </servlet-mapping>
<!-- 别忘记上面和下面加粗部分的代码-->
 
    <servlet-mapping>
      <servlet-name>SimpleUploader</servlet-name>
      <url-pattern>/FCKeditor/editor/filemanager/upload/simpleuploader</url-pattern>
    </servlet-mapping>

优化

以上都是把组件嵌入进工程的 配置过程,下面我们来把组件压缩优化一下,把无用的文件给剔除掉:

删除 /WebRoot/FCKeditor/editor/filemanager/browser/default/connectors 目录下所有的文件,这些是用来浏览文件的,对于

jsp的话是使用了 servlet 来处理,所以这些文件都是多余的

删除 /WebRoot/FCKeditor/editor/filemanager/upload 目录下所有的文件

删除 WebRoot/FCKeditor/editor/lang 目录下不需要的语言,如保留中文【zh-cn.js】和英文[EN.js]还有

fcklanguagemanager.js 文件

删除 /WebRoot/FCKeditor/editor/skins 目录下不需要的皮肤文件,有三种皮肤,可根据需要进行删除

JSP页面上的使用

★首先在test.jsp页面的页头加上标签使用语句【不需要做目录调整,已经切实可行】:

★然后在页面的相应位置增加调用语句,对于FCK标签,里面还可以增加很多属性,当然也可以不加,注意下面粗体的地方,我下面

使用了2个比较常用的属性,一个是高度的调整,另一个是组件风格

This is FCKeditor demo!

★接收参数可以这么写

其它

1、fckconfig.js总配置文件,可用记录本打开,修改后将文件存为utf-8 编码格式。找到:

FCKConfig.TabSpaces = 0 ; 改为FCKConfig.TabSpaces = 1 ; 即在编辑器域内可以使用Tab键。

2、如果你的编辑器还用在网站前台的话,比如说用于留言本或是日记回复时,那就不得不考虑安全

了,在前台千万不要使用Default的toolbar,要么自定义一下功能,要么就用系统已经定义好的Basic,也就是基本的toolbar,找

到:

FCKConfig.ToolbarSets["Basic"] = [
['Bold','Italic','-','OrderedList','UnorderedList','-',/*'Link',*/'Unlink','','Style','FontSize','TextColor','BGCol

or','-','Smiley','SpecialChar','Replace','Preview'] ] ;
这是改过的Basic,把图像功能去掉,把添加链接功能去掉,因为图像和链接和flash和图像按钮添加功能都能让前台页直接访问和

上传文件, fckeditor还支持编辑域内的鼠标右键功能。

FCKConfig.ContextMenu = [

'Generic',/*'Link',*/'Anchor',/*'Image',*/'Flash','Select','Textarea','Checkbox',
'Radio','TextField','HiddenField',/*'ImageButton',*/'Button','BulletedList',

'NumberedList','TableCell','Table','Form'] ;

这也是改过的把鼠标右键的“链接、图像,FLASH,图像按钮”功能都去掉。

3、找到: FCKConfig.FontNames =

'Arial;Comic Sans MS;Courier New;Tahoma;Times New Roman;Verdana' ;

加上几种我们常用的字体 :

FCKConfig.FontNames = '宋体;黑体;隶书;楷体_GB2312;Arial;Comic Sans MS;

Courier New;Tahoma;Times New Roman;Verdana' ;

4、注意上传的文件名不能有中文,否则无法正常显示或链接下载。
 

 


==============================================================
在JSP中配置FCKeditor 2.6.4  
 
热 点: 
 
1.FCKeditor 介绍
FCKeditor 这个开源的HTML 文本编辑器可以让web 程序拥有如MS Word 这样强大的编辑功能,.FCKeditor 支持当前流行的浏览器

2.准备工作:

环境:winddows XP、tomcat6.0、JDK1.6
下载:
1):FCKeditor_2.6.4.zip
地址:http://nchc.dl.sourceforge.net/sourceforge/fckeditor/FCKeditor_2.6.4.zip

2):fckeditor-java-2.4.1-bin.zip (JAVA支持包)地址http://nchc.dl.sourceforge.net/sourceforge/fckeditor/fckeditor-

java-2.4.1-bin.zip

3):slf4j-1.5.2.zip 地址 :http://www.slf4j.org/dist/slf4j-1.5.2.zip

3.安装:

下面以jsp为例:

分别解压之后,我们可以得到一个fckeditor和fckeditor-java-2.4.1两个文件夹。fckeditor文件夹下是需要调用的页面和js文件

等等,有各种版本,无所谓啦,我们之需要jsp就够了。将文件加全部复制到工程目录下等待调用即可。
注意:有点麻烦的是导包的问题。我们一共需要5个包:commons-fileupload-1.2.1.jar,commons-io-1.3.2.jar,fckeditor-

java-core-2.4.1.jar,slf4j-api-1.5.6.jar,slf4j-simple-1.5.6.jar或slf4j-jdk14-1.5.6.jar。
上面前四个包都可以在fckeditor-java-2.4.1文件夹下面找到,但是第五个却要另外去找,这点我非常不理解,为什么不放在一起


如果没有的话编译时就会出现如下错误信息:
严重: Servlet /fckeditorDemo threw load() exception
java.lang.NoClassDefFoundError: org/slf4j/impl/StaticLoggerBinder

 

当然版本或许不同,以上的版本是截止2009-02-4的最新版本。如果想要最新版本,可以在slf4j的官网

http://www.slf4j.org/download.html下到。但是要注意,截止到2009-2-4,slf4j官方最新版本是1.5.6,但是fckeditor提供的

slf4j-api却是1.5.2版本,如果两个版本不一样的话,你将会在控制台看到如下的消息:

严重: Servlet /Java threw load() exception
java.lang.IllegalAccessError: tried to access field org.slf4j.impl.StaticLoggerBinder.SINGLETON from class

org.slf4j.LoggerFactory

 

所以千万要注意版本一致问题。如果你实在觉得下载很麻烦,那就到这里下载吧:http://www.slf4j.org/download.html


4.配置

1)在工程目录src/下新建一个文件fckeditor.properties,添加内容:
connector.userFilesPath=UploadFile
connector.userActionImpl=net.fckeditor.requestcycle.impl.UserActionImpl其中第一行为重新定义上传的文件夹,默认文件夹

为userfile,保存即可。
2)修改web.xml,用来提供上传功能支持
<servlet>                                         
      <servlet-name>Connector</servlet-name>      
        <servlet-class>                           
          net.fckeditor.connector.ConnectorServlet
      </servlet-class>                            
      <load-on-startup>1</load-on-startup>        
</servlet>                                        
<servlet-mapping>                                 
      <servlet-name>Connector</servlet-name>      
      <url-pattern>                               
        /fckeditor/editor/filemanager/connectors/*
      </url-pattern>                              
</servlet-mapping>                            
5.应用,建立一JSP文件如下
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

String content=request.getParameter("edt1");
if (content != null) {
  content = content.replaceAll("/r/n", "");
  content = content.replaceAll("/r", "");
  content = content.replaceAll("/n", "");
  content = content.replaceAll("/"", "'");
}else{
  content = "";
}

//下面是处理中文内容的编码转换
content = new String(content.getBytes("iso8859-1"),"utf-8");
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
   
    <title>FCKEditor 测试</title>

  </head>
  <script type="text/javascript" src="fckeditor/fckeditor.js"></script>
  <body>
    This is my JSP page. <br>
    <form method="post" name="frm1">
    <script type="text/javascript">
        var oFCKeditor = new FCKeditor("edt1");
        oFCKeditor.BasePath = "fckeditor/";
        oFCKeditor.Height='400';
        oFCKeditor.Value="<%=content%>";
        oFCKeditor.Create();
    </script>
    <input type="submit" value="提交">
    </form>
    <hr>
    <%=content%>
  </body>
</html>
启动服务器,用浏览器访问即可看到结果
 

 

 类似资料: