`
suncf1985
  • 浏览: 28730 次
  • 性别: Icon_minigender_1
  • 来自: 哈尔滨
社区版块
存档分类
最新评论

CKeditor 与 CKFinfer整合

阅读更多
CKeditor 下载地址:http://ckeditor.com/download 请下载 java版地
CKfinder 下载地址:http://ckfinder.com/download 也是java版地
首先配置 CKeditor ,从 FCKeditor 升级到CKeditor后 简单了很多,几步搞定
1.先下载好的文件,复制到Web-Root下,另不另加一个文件夹,随自己喜欢
2.复制好之后什么都不用动.
3.JSP文件头部引入: <%@ taglib uri="http://ckeditor.com" prefix="ckeditor" %>
4.具体调用:
<textarea cols="30" id="editor1" name="editor1" rows="5">这是一个测试</textarea>
<ckeditor:replace  replace="editor1" basePath="js_edit/ckeditor/" config="<%=settings %>"/>
好了,这样就可以了.现在就可以使用了.
有几个需要注意的地方:
4.1.引入<script type="text/javascript" src="js_edit/ckfinder/ckfinder.js"></script>  需注意路径问题
4.2.ckeditor:标签中 <%=settings %> CKeditor的一些基本设置.如:
<%
CKEditorConfig settings = new CKEditorConfig();
//settings.addConfigValue("language", "ko"); //语言 国际化时可用.
settings.addConfigValue("width", "800");//宽度 
settings.addConfigValue("height", "200");//高度 
%>
这样就可以使用了,如需更高级的设置,可以参考官网的文档或例子.
CKFinder:
1.下载好后,此包里包含了 .war包,找到 WEB-INF下 config.xml 复制到自己的工程web-inf中.
打开web.xml,加入如下配置:(也可参考war 包下 web.xml中内容.我就是复制过来的)
<servlet>
  <servlet-name>ConnectorServlet</servlet-name>
<servlet-class>com.ckfinder.connector.ConnectorServlet</servlet-class>
<init-param>
<param-name>XMLConfig</param-name>
<param-value>/WEB-INF/config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>ConnectorServlet</servlet-name>
<url-pattern>
<!-- 这里注意路径,/js_edit/为工程web-root目录下一个目径.用时可改成自己的-->
/js_edit/ckfinder/core/connector/java/connector.java
</url-pattern>
</servlet-mapping>
<filter>
<filter-name>FileUploadFilter</filter-name>
<filter-class>com.ckfinder.connector.FileUploadFilter</filter-class>
                <init-param>
                    <param-name>sessionCookieName</param-name>
                    <param-value>JSESSIONID</param-value>
                </init-param>
                <init-param>
                    <param-name>sessionParameterName</param-name>
                    <param-value>jsessionid</param-value>
                </init-param>
</filter>
<filter-mapping>
<filter-name>FileUploadFilter</filter-name>
<url-pattern>
/js_edit/ckfinder/core/connector/java/connector.java
     </url-pattern>
</filter-mapping>
注意:路问题,只要路径对了,就没有啥事.
config.xml中修改:
<config>
<enabled>true</enabled><!-- 是否启动CKFinder,默认是false,需要手动改成true --> 
<baseDir></baseDir><!-- 这里不需要改-->
<baseURL>/strutsToFckEdit/userfiles/</baseURL><!-- 上传文件的基础路径,此处为工程名+文件夹(不喜欢可以改) --> 
<!--这里往下的我没有动,直接复制过来就可以了-->
<licenseKey></licenseKey>
<licenseName></licenseName>
<imgWidth>1600</imgWidth>
<imgHeight>1200</imgHeight>
<imgQuality>80</imgQuality>
<uriEncoding>UTF-8</uriEncoding>
<forceASCII>false</forceASCII>
        <disallowUnsafeCharacters>false</disallowUnsafeCharacters>
<userRoleSessionVar>CKFinder_UserRole</userRoleSessionVar>
<checkDoubleExtension>true</checkDoubleExtension>
<checkSizeAfterScaling>true</checkSizeAfterScaling>
<secureImageUploads>true</secureImageUploads>
<htmlExtensions>html,htm,xml,js</htmlExtensions>
<hideFolders>
<folder>.svn</folder>
<folder>CVS</folder>
</hideFolders>
<hideFiles>
<file>.*</file>
</hideFiles>
<defaultResourceTypes></defaultResourceTypes>
<types>
<type name="Files">
<url>%BASE_URL%files/</url>
<directory>%BASE_DIR%files</directory>
<maxSize>0</maxSize>
<allowedExtensions>7z,aiff,asf,avi,bmp,csv,doc,docx,fla,flv,gif,gz,gzip,jpeg,jpg,mid,mov,mp3,mp4,mpc,mpeg,mpg,ods,odt,pdf,png,ppt,pptx,pxd,qt,ram,rar,rm,rmi,rmvb,rtf,sdc,sitd,swf,sxc,sxw,tar,tgz,tif,tiff,txt,vsd,wav,wma,wmv,xls,xlsx,zip
</allowedExtensions>
<deniedExtensions></deniedExtensions>
</type>
<type name="Images">
<url>%BASE_URL%images/</url>
<directory>%BASE_DIR%images</directory>
<maxSize>0</maxSize>
<allowedExtensions>bmp,gif,jpeg,jpg,png</allowedExtensions>
<deniedExtensions></deniedExtensions>
</type>
<type name="Flash">
<url>%BASE_URL%flash/</url>
<directory>%BASE_DIR%flash</directory>
<maxSize>0</maxSize>
<allowedExtensions>swf,flv</allowedExtensions>
<deniedExtensions></deniedExtensions>
</type>
</types>
<accessControls>
<accessControl>
<role>*</role>
<resourceType>*</resourceType>
<folder>/</folder>
<folderView>true</folderView>
<folderCreate>true</folderCreate>
<folderRename>true</folderRename>
<folderDelete>true</folderDelete>
<fileView>true</fileView>
<fileUpload>true</fileUpload>
<fileRename>true</fileRename>
<fileDelete>true</fileDelete>
</accessControl>
</accessControls>
<thumbs>
<enabled>true</enabled>
<url>%BASE_URL%_thumbs/</url>
<directory>%BASE_DIR%_thumbs</directory>
<directAccess>false</directAccess>
<maxHeight>100</maxHeight>
<maxWidth>100</maxWidth>
<quality>80</quality>
</thumbs>
<plugins>
<plugin>
<name>imageresize</name>
<class>com.ckfinder.connector.plugins.ImageResize</class>
<params>
<param name="smallThumb" value="90x90"></param>
<param name="mediumThumb" value="120x120"></param>
<param name="largeThumb" value="180x180"></param>
</params>
</plugin>
<plugin>
<name>fileeditor</name>
<class>com.ckfinder.connector.plugins.FileEditor</class>
<params></params>
</plugin>
</plugins>
<basePathBuilderImpl>com.ckfinder.connector.configuration.ConfigurationPathBuilder</basePathBuilderImpl>
</config>

页面引用:参考war里的demo,代码如下:

    <%@ page language="java" contentType="text/html; charset=UTF-8" 
        pageEncoding="UTF-8"%> 
    <%@ taglib prefix="ckeditor" uri="http://ckeditor.com" %> 
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
    <html> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
    <title>first use of CKFinder</title> 
    <link type="text/css" rel="stylesheet" href="js_edit/ckfinder/skins/kama/app.css" mce_href="js_edit/ckfinder/skins/kama/app.css" /> 
    <script type="text/javascript" src="js_edit/ckfinder/ckfinder.js" mce_src="js_edit/ckfinder/ckfinder.js"></script> 
    </head> 
    <body> 
<p style="padding-left: 30px; padding-right: 30px;">
<script type="text/javascript">

// This is a sample function which is called when a file is selected in CKFinder.
function showFileInfo( fileUrl, data, allFiles )
{
var msg = 'The last selected file is: <a href="' + fileUrl + '">' + fileUrl + '</a><br /><br />';
// Display additional information available in the "data" object.
// For example, the size of a file (in KB) is available in the data["fileSize"] variable.
if ( fileUrl != data['fileUrl'] )
msg += '<b>File url:</b> ' + data['fileUrl'] + '<br />';
msg += '<b>File size:</b> ' + data['fileSize'] + 'KB<br />';
msg += '<b>Last modified:</b> ' + data['fileDate'];

if ( allFiles.length > 1 )
{
msg += '<br /><br /><b>Selected files:</b><br /><br />';
msg += '<ul style="padding-left:20px">';
for ( var i = 0 ; i < allFiles.length ; i++ )
{
// See also allFiles[i].url
msg += '<li>' + allFiles[i].data['fileUrl'] + ' (' + allFiles[i].data['fileSize'] + 'KB)</li>';
}
msg += '</ul>';
}
// this = CKFinderAPI object
this.openMsgDialog( "Selected file", msg );
}

// You can use the "CKFinder" class to render CKFinder in a page:
var finder = new CKFinder();
// The path for the installation of CKFinder (default = "/ckfinder/").
finder.basePath = '../';
// The default height is 400.
finder.height = 600;
// This is a sample function which is called when a file is selected in CKFinder.
finder.selectActionFunction = showFileInfo;
finder.create();

// It can also be done in a single line, calling the "static"
// create( basePath, width, height, selectActionFunction ) function:
// CKFinder.create( '../', null, null, showFileInfo );

// The "create" function can also accept an object as the only argument.
// CKFinder.create( { basePath : '../', selectActionFunction : showFileInfo } );

</script>
</p>
    </body> 
    </html> 


好了,现在这二个都可以单独使用了.
现在说一下整合.
找到CKeditor 下的 config.js,加入如下代码:
//配置CKFinder 
    config.filebrowserBrowseUrl ='js_edit/ckfinder/ckfinder.html'; 
    config.filebrowserImageBrowseUrl ='js_edit/ckfinder/ckfinder.html?Type=Images'; 
    config.filebrowserFlashBrowseUrl = 'js_edit/ckfinder/ckfinder.html?Type=Flash'; 
    config.filebrowserUploadUrl = 'js_edit/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Files'; 
    config.filebrowserImageUploadUrl = 'js_edit/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Images'; 
    config.filebrowserFlashUploadUrl = 'js_edit/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Flash'; 
    config.filebrowserWindowHeight='50%';// 可以用像素
    config.filebrowserWindowWidth='70%';// 可以用像素

此处也需要注意路径问题.
完成了.这样二个就能够使用了.
最后说一下CKFinder ,这个东西是花钱地,不花钱的,网上可以找找破解的.
上传文件同名问题已经修改过了(原版的是上传的文件名等于保存的文件名.现在改为用时间重新命的).在附件里.
其它的就不多说了,下班了.
可以参考源码.
补充一下..这二个的设计可以是在一起设置的.
CKEditorConfig settings = new CKEditorConfig();
settings.addConfigValue("language", "ko"); //语言
设置语言的时候,CKFinder也随着改了.
分享到:
评论

相关推荐

    Ckeditor与ckfinder整合

    在本文中,我们将深入探讨如何将Ckeditor与ckfinder整合在Java环境下,实现文件上传功能。Ckeditor是一款强大的富文本编辑器,而ckfinder则是一个文件管理器,它们结合使用可以方便地在编辑器中插入、管理和上传各种...

    ckeditor与ckfinder整合demo采用springmvc

    ckeditor与ckfinder整合demo采用springmvc,学习使用

    Ckeditor与ckfinder整合forJAVA

    Ckeditor与ckfinder整合forJAVA(支持文件上传),详细描述,按照步骤操作即可搭建可视化html编辑器

    最新ckeditor_ckfinder整合超完整版

    ckeditor、ckfinder整合教程

    最新ckeditor_ckfinder整合超完整版 for PHP 附ckeditor完整中文配置

    本文将详细介绍"最新ckeditor_ckfinder整合超完整版 for PHP"的相关知识点,包括CKEditor、CKFinder以及它们如何与PHP进行整合,同时提供关于ckeditor完整中文配置的指南。 CKEditor是一款流行的开源富文本编辑器,...

    java与ckeditor和ckfinder整合后实现上传图片功能

    以下是对"java与ckeditor和ckfinder整合后实现上传图片功能"这一主题的详细说明。 首先,**CKEditor** 是一个开源的JavaScript富文本编辑器,它提供了丰富的文本格式化选项,让用户可以在网页上创建类似于Word文档...

    CKEditor代码高亮整合示例源码

    CKEditor代码高亮整合示例源码 项目描述 此示例把编辑器ckeditor和代码高亮syntaxhighlighter两个插件 整合到一起,这样编辑器就可以高亮显示代码信息了。 读起来很舒服。 欢迎感兴趣的用户下载学习。

    Ckeditor、ckfinder整合项目

    **CKEditor与CKFinder的整合** 整合CKEditor和CKFinder,可以让用户在编辑文本时方便地插入和管理服务器上的图片、文件等资源。CKFinder作为CKEditor的附件管理模块,可以在编辑器中打开,让用户直接在编辑界面选择...

    ckeditor与ckfinder整合forJAVA(支持文件上传、解决乱码问题)二

    ### CKEditor与CKFinder整合For Java(支持文件上传、解决乱码问题) #### 知识点一:CKEditor与CKFinder简介 - **CKEditor**:CKEditor是一款强大的开源富文本编辑器,广泛应用于Web应用程序中,允许用户直接在...

    ckeditor4.2与ckfinder整合到一起

    以下将详细介绍如何将CKEditor 4.2与CKFinder整合到一起,以及在VS2010环境下进行这个过程的关键步骤。 首先,我们需要理解CKEditor 4.2的功能。这是一个JavaScript库,提供了丰富的文本编辑功能,包括字体样式、...

    jsp中ckeditor+ckfinder整合.doc

    为了解决这个问题,我们需要将ckeditor与ckfinder进行整合,以实现更加强大的富文本编辑功能。 #### 二、ckeditor与ckfinder介绍 - **ckeditor**:一款非常流行的开源WYSIWYG富文本编辑器,支持多种格式和样式的...

    最新ckeditor_ckfinder整合超完整版.doc

    总的来说,CKEditor与CKFinder的整合为Web应用提供了强大而便捷的文本编辑和文件管理能力,是构建内容管理系统、博客平台、论坛等Web项目的理想选择。通过理解这两个工具的原理和整合方法,开发者可以更好地利用它们...

    springmc ckeditor ckfinder三者整合

    而CKFinder是一款文件管理器,它与CKEditor配合,允许用户上传、管理和插入到编辑器中的图片和文件。 首先,我们来深入了解Spring MVC。Spring MVC是基于Java的模型视图控制器架构,它简化了Web应用程序的开发。它...

    CKEditor整合上传图片功能,绝对能用

    在“CKEditor整合上传图片功能”中,我们主要关注的是如何将CKEditor与CKFinder结合,实现图片的上传和管理功能。 CKFinder是一款强大的文件管理器,特别适合与CKEditor搭配使用。它提供了文件浏览、上传、下载、...

    CKEditor和CKFinder整合的ASP.NET实例

    3. **CKEditor与CKFinder的整合**: - 通过CKEditor的API,可以将CKFinder集成到编辑器中作为图片或文件上传的插件。这通常通过调用`CKFinder_popup()`函数并在CKEditor的按钮或菜单项事件中触发来实现。 - 配置...

    CKEditor与 CKFinder 整合并实现文件上传功能.zip

    在项目中我们使用了FckEditor,但最新又出来了个ckEditor,到官方网站看看才知道FckEditor在2.6版本之后就改名为ckEditor了。FckEditor里有java版本的配置,可以支持php、asp.net、java版本,现在一下子变为ckEditor...

    jsp中ckeditor+ckfinder整合

    本文将详细介绍如何在jsp项目中整合ckeditor与ckfinder,并通过具体步骤指导读者实现这一整合过程。 #### 二、准备工作 1. **下载ckeditor和ckfinder** - **ckeditor** 的下载地址为:...

    CKEditor 和CkFinder整合 Asp,netDemo

    而CkFinder则是一款文件管理器,用于方便地上传、下载、管理和查看服务器上的文件,常与CKEditor配合使用,为用户提供图片、文件的插入和链接能力。 在Asp.NET环境中整合CKEditor和CkFinder,主要涉及以下几个关键...

    php168 整站系统与ckeditor整合指南

    《php168 整站系统与ckeditor整合指南》 在网页内容编辑中,CKEditor是一款强大且功能丰富的文本编辑器,它源自FCKeditor的重写,提供了一个灵活、可扩展的API接口。CKEditor的新特性是基于插件的架构,允许用户...

Global site tag (gtag.js) - Google Analytics