`
jungle1171
  • 浏览: 3926 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

spring mvc和FCKeditor整合

阅读更多

话说当遇到问题的时候,还真的应该仔细想想,把道理理清楚,那么问题自然就不攻自破了。

嗯嗯~~

环境:spring mvc 2.5、FCKeditor2.3

FCKeditor的配置不赘述,google之。。。

问题:在页面内嵌入如下代码,在页面和控制台都不报错,但是也不显示任何东西,空白一片。

<form action="shou.jsp" method="post" target="_blank">
            <textarea id="f_content" name="f_content" cols="10" rows="11">input</textarea>
            <script type="text/javascript">
                var oFCKeditor = new FCKeditor('f_content','600px','300px','Basic','hello~~~') ;
                oFCKeditor.BasePath = "FCKeditor/";//实际目录参考:和WEB-INF在同一层。注意前边不能有/,后边必须有/
                //oFCKeditor.ToolbarSet = 'Default';
                //oFCKeditor.Height      = 500 ;
                oFCKeditor.ReplaceTextarea();  //替换文本域
            </script>
        </form>

 解决方法:

在web.xml里,spring mvc 的dispatcher servlet监听的url匹配范围缩小,逼开对所有html(如*.html)的请求处理。例如,配置为:

    <servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>2</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>*.do</url-pattern>
    </servlet-mapping>
 

原因:

FCKeditor实际上是在页面里嵌入了一个html文件:"/FCKeditor/editor/fckeditor.html".

如果spring的servlet把FCKeditor的这个请求也截获了的话,那么就必然会到xxx-dispatcher.xml里去找匹配,然后就要进入到一个Controller里去处理,而FCKeditor的这个请求“/FCKeditor/editor/fckeditor.html“实际上是带了参数的,象:/FCKeditor/editor/fckeditor.html?id=xxxx&aaa=bbb"。这样的话,在Controller里截获然后再去取这个html就很笨了。不如就不截获它,在web.xml里绕开能够和”/FCKeditor/editor/fckeditor.html”匹配的pattern。

 

不过,这样的话可能会导致一些安全问题,FCKeditor能绕开的请求,别有用心的人也能绕的开了~~~最乐观的预计也是对于错误的请求如何收拾~

分享到:
评论

相关推荐

    有关fckeditor的jar包

    这个jar包很可能包含了这些Servlet以及相关的依赖,使得开发者能够轻松地将FCKeditor整合到Java Web应用中。 在使用Fckeditor时,开发者首先需要在HTML页面中引入编辑器的JavaScript文件,然后通过JavaScript初始化...

    jsp+struts+hibernate+spring+FckEditor+freemarker+css+mysql的在线博客系统(源码完整直接运行,高仿真数据库记录)

    在本系统中,Spring整合了Struts和Hibernate,提供统一的事务管理和数据访问支持。 `Freemarker`是一个强大的模板引擎,用于生成HTML或其他格式的文本。在这个博客系统中,Freemarker被用来分离视图层和逻辑层,...

    Struts2+Hibernate+Spring框架整合所需的jar文件

    Struts2、Hibernate和Spring是Java企业级开发中三大主流框架,它们的整合极大地提高了开发效率,降低了系统复杂性。SSH框架的整合涉及到多个jar文件,这些文件是框架正常运行的基础,也是Java开发者必备的工具。 ...

    FCKeditor ssh2项目 jar包配置页面文件

    SSH2(Spring、Struts和Hibernate的组合)是一个常见的MVC框架,用于构建企业级应用。本篇文章将详细介绍如何在SSH2项目中集成和配置FCKeditor,以及涉及到的关键文件和步骤。 **1. FCKeditor介绍** FCKeditor是一...

    FCKeditor+java超炫相册

    Spring框架或Struts2可能用于控制层,以实现MVC(Model-View-Controller)设计模式,提高代码的可维护性和可扩展性。 LightBox,这个子文件名,通常是指一种JavaScript库,用于在网页上展示大图。当用户点击缩略图...

    java整合fck例子jar包

    在实际应用中,你可能需要结合Spring框架或者其他MVC框架来处理这些请求。例如,你可以创建一个Servlet或者使用Spring的`@PostMapping`注解来处理来自FCKeditor的请求。对于文件上传,你可以利用Java的`Part`接口,...

    testFCKEditor

    为了实现图片预览和删除,开发者可能使用了如Servlet或Spring MVC等技术来构建后端接口,配合JSON或其他数据格式进行通信。同时,可能还需要考虑安全性问题,如防止非法访问或删除,以及错误处理机制,确保服务的...

    FCK editor 使用实例代码

    在Java环境下,你可以使用诸如Struts、Spring MVC等框架来接收和处理这个值。 6. **扩展与自定义** FCKeditor允许开发者自定义工具栏按钮、添加插件,甚至修改编辑器的外观。你可以在`fckToolbarButtons.js`和`fck...

    fck2.4编辑器,Java版本

    在Java环境中,这可能涉及到Servlet、Filter或MVC框架(如Spring MVC)中的处理逻辑,确保图片能够顺利上传至服务器并能在编辑器中显示。 “自定义工具条”功能让用户可以根据需求定制编辑器的工具栏,展示不同的...

    火炬博客系统7

    系统分为四个层次,即表示层(Presentation Layer)、域模型层(Domain Model Layer)、 业务层(bussiness Layer)和持久层(Persistence Layer),使用Spring框架整合Struts和 Hibernate,用Spring的“控制反转IOC...

    火炬博客系统5

    系统分为四个层次,即表示层(Presentation Layer)、域模型层(Domain Model Layer)、 业务层(bussiness Layer)和持久层(Persistence Layer),使用Spring框架整合Struts和 Hibernate,用Spring的“控制反转IOC...

    火炬博客系统6

    系统分为四个层次,即表示层(Presentation Layer)、域模型层(Domain Model Layer)、 业务层(bussiness Layer)和持久层(Persistence Layer),使用Spring框架整合Struts和 Hibernate,用Spring的“控制反转IOC...

    对于SSH项目的一些经验总结

    - **文件上传**:结合FCKeditor等富文本编辑器实现图片上传和文件管理功能。 - **分页查询**:使用Hibernate或MyBatis的分页查询功能,提高大数据量下的查询效率。 - **数据导入导出**:通过解析TXT文件等方式实现...

    软件开发中动态表单的解决方案 (2010年)

    通过分析动态表单的实现原理和运行机制,采用MVC架构,运用Struts,Spring和iBATIS整合的轻量级J2EE的多层软件架构和模块化思想,结合Fckeditor在线编辑器和FreeMarker组件,设计并实现了一个B/S结构的、可视化的动态表单...

Global site tag (gtag.js) - Google Analytics