`
sky_yangwang
  • 浏览: 51444 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

ssh+ckeditor

阅读更多

1ckeditor

1),http://ckeditor.com/download 

CKEditor for Java ---3.6.2下载;---ckeditor-java-3.6.2.war使用Tomcat分发包;---得到ckeditor-java-3.6.2文件内容;

2),复制ckeditor文件夹到项目web根路径下;

3),复制ckeditor-java-core-3.5.3.jar类库到项目web-inf下。

2ckfinder

1),http://ckfinder.com/download 

Java---2.2.1下载;---ckfinder_java_2.2.1.zip解压;---CKFinderJava.war使用Tomcat分发包;---得到CKFinderJava文件;

2)ckfinder

2),复制ckfinder文件夹到项目web根路径下;

3),复制lib下的类库到项目web-inf下(commons-fileupload-1.2.2.jarcommons-io-2.0.1.jar已有,不用复制)。

3,复制CKFinderJava\WEB-INF\config.xml到项目的web-inf下:

Config.xml配置修改:

<enabled>true</enabled>---开启上传;

<baseURL>/sshWeb/WebsiteBackstage/userfiles/</baseURL>---上传文件存放位置;

上传文件、图片、flash的类型配置(先不动);

4ckeditor\config.js修改:

CKEDITOR.editorConfig = function( config )

{

// Define changes to default configuration here. For example:

// config.language = 'fr';

// config.uiColor = '#AADC6E';

config.language =  "zh-cn" ; 

config.filebrowserWindowWidth = '1000';  

    config.filebrowserWindowHeight = '700'

    

config.filebrowserBrowseUrl =  '/sshWeb/ckfinder/ckfinder.html' ;  

    config.filebrowserImageBrowseUrl =  '/sshWeb/ckfinder/ckfinder.html?type=Images' ;  

    config.filebrowserFlashBrowseUrl =  '/sshWeb/ckfinder/ckfinder.html?type=Flash' ;  

    config.filebrowserUploadUrl =  '/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Files' ;  

    config.filebrowserImageUploadUrl =  '/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Images' ;  

    config.filebrowserFlashUploadUrl =  '/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Flash' ;     

};

参考文章:

http://www.cnblogs.com/yezhenhan/archive/2011/12/10/2282986.html 

----------------------------------------------------------------------------------------------------

5,Js写法的页面代码:

<script src="../../ckeditor/ckeditor.js" type="text/javascript"></script>

<script src="../../ckfinder/ckfinder.js" type="text/javascript"></script>

<script src="../js/jquery-1.7.2.js" type="text/javascript"></script>  

<script src="../../ckeditor/adapters/jquery.js" type="text/javascript"></script> 

<s:form action="about_add">

     <s:textfield name="aboutUs.title" label="标题"/>

      <s:textarea name="aboutUs.content" rows="30" cols="50" label="内容"/>

      <script type="text/javascript">  

                 $('#editor').ckeditor();  

                 var editor = CKEDITOR.replace('aboutUs.content');

                 CKFinder.setupCKEditor(editor, '/sshWeb/ckfinder/');

            </script>

     <s:submit/>

</s:form>

6Web.xml配置:

---struts2servlet并存解决方法:使用自定义过滤器,将web.xml中添加的ckfinderservlet过滤内容从struts2过滤中排除;

<filter>  

        <filter-name>MyServlet</filter-name>  

       <filter-class>util.ReDispatcherFilter</filter-class>  

        <init-param>  

      <param-name>includeServlets</param-name>  

       <param-value>connector.java</param-value>  

       </init-param>  

    </filter>  

  <filter-mapping>  

       <filter-name>MyServlet</filter-name>  

        <url-pattern>/*</url-pattern>  

   </filter-mapping>  

      

       <filter>

        <filter-name>struts2</filter-name>

        <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>

   </filter>

   <filter-mapping>  

       <filter-name>struts2</filter-name>  

       <url-pattern>*.action</url-pattern>  

   </filter-mapping>

    <filter-mapping>

        <filter-name>struts2</filter-name>

        <url-pattern>/*</url-pattern>

    </filter-mapping>  

    

    

    <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>

/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>

/ckfinder/core/connector/java/connector.java

       </url-pattern>

</filter-mapping>

<session-config>

<session-timeout>10</session-timeout>

</session-config>

    <welcome-file-list>

        <welcome-file>index.html</welcome-file>

</welcome-file-list>

7,自定义过滤器:

import java.io.IOException;

import java.util.ArrayList;

import java.util.Arrays;

import javax.servlet.Filter;

import javax.servlet.FilterChain;

import javax.servlet.FilterConfig;

import javax.servlet.RequestDispatcher;

import javax.servlet.ServletException;

import javax.servlet.ServletRequest;

import javax.servlet.ServletResponse;

import javax.servlet.http.HttpServletRequest;

public class ReDispatcherFilter implements Filter {

public void destroy() {

   // TODO Auto-generated method stub

}

public void doFilter(ServletRequest req, ServletResponse resp,

    FilterChain chain) throws IOException, ServletException 

{

  

   HttpServletRequest request = (HttpServletRequest)req;

   String target = request.getRequestURI();

   target = target.lastIndexOf("?")>0   

      ?target.substring(target.lastIndexOf("/")+1,target.lastIndexOf("?")-target.lastIndexOf("/"))

      :target.substring(target.lastIndexOf("/")+1);

  

   System.out.println(target);

   if(this.includes.contains(target))

   {

    RequestDispatcher rdsp = request.getRequestDispatcher(target);

   

    System.out.println("go..............."+rdsp);

    rdsp.forward(req, resp);

   }

   else

    chain.doFilter(req, resp);

}

private ArrayList<String> includes = new ArrayList<String>();

public void init(FilterConfig config) throws ServletException {

  

   this.includes.addAll( Arrays.asList(config.getInitParameter("includeServlets").split(",")));

}

}

参考文章:

ssh&ckfinder&ckeditor struts2servlet并存解决方法

http://blog.csdn.net/databaseyan/article/details/6914654 

http://hi.baidu.com/xsl2007/blog/item/4eb796cf94e35f0992457e11.html 

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////

其它问题:

上传文件中文名问题;

上传文件位置问题;

单纯Ckeditor的使用:

下载最新的ckeditor文件: http://ckeditor.com/download

解压后复制到web层根目录下;

页面引用js:

<script src="ckeditor/ckeditor.js" type="text/javascript"></script>

替换TEXTAREA标签:

<textarea rows="30" cols="50" name="editor01">请输入.</textarea>
<script type="text/javascript">CKEDITOR.replace('editor01');</script>


分享到:
评论

相关推荐

    ssh+sql+jquery+ckeditor+css2+html5+ext4+swt+xmlhttp+易宝支付帮助文档_各类web开发文档

    ssh+sql+jquery+ckeditor+css2+html5+ext4+swt+xmlhttp+易宝支付帮助文档_各类web开发文档 chm格式

    SSH+URLWriter+AJAX+CKEditor+CKFinder配置示例

    SSH架构实现的Web应用。 其中使用了Struts2+Spring3+Hibernate3+DWR3+CKeditor3+CKFinder2等技术。 本资料主要是框架的配置文件示例。在系统中已经运行成功。 有疑问的请联系QQ四九八三5七七七九 或邮件:...

    SSH+ExtJs完成CKEditor富文本编辑器整合

    NULL 博文链接:https://liuwei1981.iteye.com/blog/1867797

    java_jsp项目源码_企业级新闻系统(SSH+MYSQL).rar

    企业级新闻系统(SSH+MYSQL)是一款基于Java技术栈(SSH:Struts2 + Spring + Hibernate)和MySQL数据库开发的新闻管理系统。该系统旨在帮助企业高效地进行新闻内容的创建、发布、管理和展示,提升企业形象,扩大品牌...

    ckeditor+ckfinder+ssh框架

    此文本编辑器可以完成类型word的编辑,同时实现图片上传功能。

    jsp中ckeditor+ckfinder整合

    jsp中ckeditor+ckfinder整合,

    ckeditor5-build-full:包含CKEditor的所有正式构建方法以及一些自定义插件

    # 目前本人自用采用npm私服安装,未发布到npm官方仓库,客观们可以使用如下命令安装:npm i -S https://github.com/letsbug/ckeditor5-build-full.git# or (if you have configured github's SSH key locally)npm i...

    SSH框架我的博客(怎么上传个东西这么难)

    SSH框架,MYSQL,CKEDITOR配置实现图片上传,登录验证码,自定义拦截器对没登录用户自动跳转到登录页面。网页在CHROME模式下排版才不乱。

    毕业论文_基于SSH框架的论坛的设计与实现

    这个是本人做的毕业设计,题目叫做基于SSH框架的论坛的设计与实现,集成了Struts2.3.4 Spring3.2 Hibernate4.1.9 Junit4 ,服务器用的是tomcat7.0 开发工具用的是MyEclipse10 数据库用的是MySQL5.5 整体架构为三层...

    CKEditor-Finder整合,图片上传下载精简DEMO

    一个基于CKEditor和CKFinder的基础上整合下来的一个小DEMO 小而精干,我已经将不需要的多余东西全部删除,以此来解放各位“大小控”们。当初是在s2上跑的,但是如果同样放在SpringMvc或者SSH,道理都是一样的,重要...

    纯SSH写的简易考研论坛

    SSH,界面比较简单,功能只有登陆,注册,发帖,用了ckeditor插件,自己可以在这个基础上继续开发。

    SSH框架博客

    我的博客前端半成,SSH框架,已经配置好CKEDITOR,实现验证码、和拦截器。

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

    百度云盘分享 简介 笔者当初为了学习JAVA,收集了很多经典源码,源码难易程度分为初级、中级、高级等,详情看源码列表,需要的可以直接下载! 这些源码反映了那时那景笔者对未来的盲目,对代码的热情、执着,对...

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

    简介 笔者当初为了学习JAVA,收集了很多经典源码,源码难易程度分为初级、中级、高级等,详情看源码列表,需要的可以直接下载! 这些源码反映了那时那景笔者对未来的盲目,对代码的热情、执着,对IT的憧憬、向往!...

    java开源包1

    Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java...

    java开源包11

    Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java...

    java开源包2

    Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java...

    java开源包3

    Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java...

    java开源包6

    Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java...

Global site tag (gtag.js) - Google Analytics