jsp中使用FCKeditor,点插入图片,表格等弹出对话框的按钮,弹出的对话框都是只有一个说明,没有具体内容,我怀疑是那个路径配的不对,我在项目的根目录下建了个目录FCKeditor,把FCKeditor相关的文件都放在这个目录中,web.xml中有关路径的配置
<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>
在FCKeditor.js中  this.BasePath = 'FCKeditor/' ;
有谁遇到过此类问题,请指教

解决方案 »

  1.   

    你的配置文件有问题
    你下载完FCK以后把FCKeditor的所有内容直接复制到你项目的根目录下就可以了
    不用在建个目录.
    <?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE web-app
      PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
      "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd"><web-app>
      <display-name>FCKeditor Test Application</display-name>
       
        <servlet>
         <servlet-name>MyServlet</servlet-name>
         <servlet-class>MyServlet</servlet-class>
        </servlet>
    <servlet>
    <servlet-name>Connector</servlet-name>
    <servlet-class>com.fredck.FCKeditor.connector.ConnectorServlet</servlet-class>
    <init-param>
    <param-name>baseDir</param-name>
    <param-value>/editor</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>
    <param-value>../UseFile</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>
        <servlet-name>UpServlet</servlet-name>
        <servlet-class>UpServlet</servlet-class>
      </servlet>
      <servlet-mapping>
        <servlet-name>Connector</servlet-name>
        <url-pattern>/editor/filemanager/browser/default/connectors/jsp</url-pattern>
      </servlet-mapping>
     <servlet-mapping>
         <servlet-name>MyServlet</servlet-name>
         <url-pattern>/MyServlet</url-pattern>
       </servlet-mapping>
      
      <servlet-mapping>
        <servlet-name>SimpleUploader</servlet-name>
        <url-pattern>/editor/filemanager/upload/simpleuploader</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>UpServlet</servlet-name>
        <url-pattern>/up</url-pattern>
      </servlet-mapping>  <taglib>
    <taglib-uri>/editor</taglib-uri>
    <taglib-location>/WEB-INF/FCKeditor.tld</taglib-location>
    </taglib>
    </web-app>
    这是我写的web.xml的配置文件 你和你的配置文件对照一下.
    不只这里需要修改,还有在fckconfig.js中也有许多的地方需要修改.
    我做上一个项目时候才用的这个编辑器很稳定.当时我也查了很多资料,自己测试了好几天才把上传图片的功能完成的.它一开始时候的上传照片等功能是关闭的,你要自己修改配置.
    如果还不能搞定把你邮箱写出来,我把我改过以后的可以上传图片的FCKeditor的DEMO发给你.
      

  2.   

    好的
    你要是调试不出来在说吧~我给你发个配置说明给你
    1.下载
    FCKeditor.java 2.3 (FCKeditot for java)
    FCKeditor 2.2 (FCKeditor基本文件)
    以下是下载地址:
    http://www.fckeditor.net/download/default.html2.建立项目:
    建立项目tomcat/webapps/TestFCKeditor.3.将FCKeditor2.2解压缩
    将FCKeditor2.2解压缩,将整个目录FCKeditor复制到项目的根目录下,
    目录结构为:tomcat/webapps/TestFCKeditor/FCKeditor
    然后将FCKeditor-2.3.zip(java)压缩包中\web\WEB-INF\lib\目录下的两个jar文件拷到项目的\WEB-INF\lib\目录下。把其中的src目录下的FCKeditor.tld文件copy到TestFCKedit/WEB-INF/下4.合并web.xml:
    将FCKeditor-2.3.zip压缩包中\web\WEB-INF\目录下的web.xml文件合并到项目的\WEB-INF\目录下的web.xml文件中。
    5. 修改合并后的web.xml文件
    修改合并后的web.xml文件,将名为SimpleUploader的Servlet的enabled参数值改为true,
    以允许上传功能,Connector Servlet的baseDir参数值用于设置上传文件存放的位置。
    添加标签定义:
    <taglib>
    <taglib-uri>/TestFCKeditor</taglib-uri>
    <taglib-location>/WEB-INF/FCKeditor.tld</taglib-location>
    </taglib>6. 映射:
    上面文件中两个servlet的映射分别为:/editor/filemanager/browser/default/connectors/jsp/connector
    和/editor/filemanager/upload/simpleuploader,需要在两个映射前面加上/FCKeditor,
    即改为/FCKeditor/editor/filemanager/browser/default/connectors/jsp/connector和
    /FCKeditor/editor/filemanager/upload/simpleuploader。7.修改skin文件夹
    进入skin文件夹,如果你想使用fckeditor默认的这种奶黄色,
    那就把除了default文件夹外的另两个文件夹直接删除.8.删除无用文件
    删除/FCKeditor/目录下除fckconfig.js, fckeditor.js, fckstyles.xml, fcktemplates.xml四个文件以外的所有文件 
    删除目录/editor/_source,
    删除/editor/filemanager/browser/default/connectors/下的所有文件
    删除/editor/filemanager/upload/下的所有文件
    删除/editor/lang/下的除了fcklanguagemanager.js, en.js, zh.js, zh-cn.js四个文件的所有文件9.修改配置:
    打开/FCKeditor/fckconfig.js
    修改 FCKConfig.DefaultLanguage = 'zh-cn' ; 
    把FCKConfig.LinkBrowserURL等的值替换成以下内容:
    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" ;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' ;10.其它
    fckconfig.js总配置文件,可用记录本打开,修改后将文件存为utf-8 编码格式。找到:FCKConfig.TabSpaces = 0 ; 改为FCKConfig.TabSpaces = 1 ; 即在编辑器域内可以使用Tab键。如果你的编辑器还用在网站前台的话,比如说用于留言本或是日记回复时,那就不得不考虑安全了,
    在前台千万不要使用Default的toolbar,要么自定义一下功能,要么就用系统已经定义好的Basic,
    也就是基本的toolbar,找到:
    FCKConfig.ToolbarSets["Basic"] = [
    ['Bold','Italic','-','OrderedList','UnorderedList','-',/*'Link',*/'Unlink','-','Style','FontSize','TextColor','BGColor','-',
    '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,图像按钮”功能都去掉。  找到: 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' ;11.添加文件
    添加文件 /TestFCKeditor/test.jsp:
    <%@ page language="java" import="com.fredck.FCKeditor.*" %>
    <%@ taglib uri="/TestFCKeditor" prefix="FCK" %>
    <script type="text/javascript" src="/TestFCKeditor/FCKeditor/fckeditor.js"></script><%--
    三种方法调用FCKeditor
    1.FCKeditor自定义标签 (必须加头文件 <%@ taglib uri="/TestFCKeditor" prefix="FCK" %> )
    2.script脚本语言调用 (必须引用 脚本文件 <script type="text/javascript" src="/TestFCKeditor/FCKeditor/fckeditor.js"></script> )
    3.FCKeditor API 调用 (必须加头文件 <%@ page language="java" import="com.fredck.FCKeditor.*" %> )
    --%><%--
    <form action="show.jsp" method="post" target="_blank">
    <FCK:editor id="content" basePath="/TestFCKeditor/FCKeditor/"
    width="700"
    height="500"
    skinPath="/TestFCKeditor/FCKeditor/editor/skins/silver/"
    toolbarSet = "Default"
    >
    input
    </FCK:editor>
    <input type="submit" value="Submit">
    </form>
    --%><form action="show.jsp" method="post" target="_blank">
    <table border="0" width="700"><tr><td>
    <textarea id="content" name="content" style="WIDTH: 100%; HEIGHT: 400px">input</textarea>
    <script type="text/javascript">
    var oFCKeditor = new FCKeditor('content') ;
    oFCKeditor.BasePath = "/TestFCKeditor/FCKeditor/" ;
    oFCKeditor.Height = 400;
    oFCKeditor.ToolbarSet = "Default" ; 
    oFCKeditor.ReplaceTextarea();
    </script>
    <input type="submit" value="Submit">
    </td></tr></table>
    </form><%--
    <form action="show.jsp" method="post" target="_blank">
    <%
    FCKeditor oFCKeditor ;
    oFCKeditor = new FCKeditor( request, "content" ) ;
    oFCKeditor.setBasePath( "/TestFCKeditor/FCKeditor/" ) ;
    oFCKeditor.setValue( "input" );
    out.println( oFCKeditor.create() ) ;
    %>
    <br>
    <input type="submit" value="Submit">
    </form>
    --%>添加文件/TestFCKeditor/show.jsp:
    <%
    String content = request.getParameter("content");
    out.print(content);
    %>
    这个是对上传图片的一些修改说明,我也不知道网站是多少了.这是我备份的
      

  3.   

    我的 /FCKeditor/editor/filemanager/browser/default/connectors/中怎么没有jsp目录
      

  4.   

    建一个空目录能行吗<servlet-mapping>
        <servlet-name>Connector</servlet-name>
        <url-pattern>/FCKeditor/editor/filemanager/browser/default/connectors/jsp/connector</url-pattern>
      </servlet-mapping>,此外,我这个文件也没有FCKeditor/editor/filemanager/upload/simpleuploader
      

  5.   

    nmjj2006(),我已经全部按你的方法配了,但原来的问题还是没有解决,点工具栏中所有弹出网页对话框的操作,弹出的网页对话框只有标题,内容都是空的
      

  6.   

    好的,[email protected] 谢谢nmjj2006()
      

  7.   

    請問如何新建connectors/jsp/connector 、
    upload/simpleuploader 
    這兩個目錄啊?源程序沒有呢!~
    也請發一份到我的信箱吧,謝謝了
    [email protected]