Struts 2.0 整合 FCKeditor

最近项目(s+s+h)中也用到了FCKeditor编辑器,使用过程中也遇到了不少问题,这里拿出来给大家一起分享下!具体的配置可参考:http://www.blogjava.net/fastunit/archive/2008/02/18/180525.html。 (一) 上传文件时中文乱码问题 FCKeditor-java没有很好的解决中文问题。需要我们修改它的源代码后重新编译打包。打包过程如下:1。 新建一个web工程名字为FCKeditor-java-2.3,然后把FCKeditor-2.3-java.zip解压缩后的代码拷贝到工程目录下。2。如果是用的Eclipse,使用快捷键Ctrl+Shift+R在SimpleUploaderServlet.java和ConnectorServlet.java两个文件里找到DiskFileUpload upload = new DiskFileUpload();分别在其后加入 upload.setHeaderEncoding("utf-8"); (二) 1、上传时新建的中文目录全部乱码; 2、浏览服务器时有中文名称文件或目录将会出现乱码。虽然上传到服务器上的文件名正常,但在JSP页面点下载链接时文件名乱码导致不能正常下载。查找资料:TOMCAT 链接参数有中文时,乱码解决方法http://hi.baidu.com/jadestone/blog/item/7564deefc9192d36acafd5be.html修改tomcat-home/conf/server.xml方法一(推荐):在两处地方加上URIEncoding="utf-8":      <Connector port="8080"                 maxThreads="150" minSpareThreads="25" maxSpareThreads="75"                 enableLookups="false" redirectPort="8443" acceptCount="100"                 debug="0" connectionTimeout="20000"                  disableUploadTimeout="true" URIEncoding="utf-8" />                     <Connector port="8009"                  enableLookups="false" redirectPort="8443" debug="0"                 protocol="AJP/1.3" URIEncoding="utf-8" />               方法二:使用useBodyEncodingForURI="true". 这个方法适合你的TOMCAT实例下需要跑多个不同Encoding的程序时。<... maxThreads="150" minSpareThreads="25" maxSpareThreads="75"         enableLookups="false" redirectPort="8443" acceptCount="100"        connectionTimeout="20000" disableUploadTimeout="true" useBodyEncodingForURI="true" />        enableLookups="false" redirectPort="8443" protocol="AJP/1.3" useBodyEncodingForURI="true" / (三) FCKeditor2.3上传文件功能与Struts 2 不兼容的问题        原因:Struts2框架提供了系列拦截器,该系列拦截器负责将HttpServletRequest请求中的请求参数解析出来,传入到Action中,并回调Action的execute方法来处理用户请求。(FilterDispatch是Struts 2的核心控制器,它负责拦截所有的用户请求,FilterDispatch作为一个Filter运行在Web应用中,当请求到达时,该Filter会过滤用户请求。)而FCKeditor 的上传功能使用DiskFileUpload的praseRequest(HttpServletRequest request)方法解析上传文件信息,与Struts2的拦截器功能相冲突。解决:让Struts2仅处理*.action的请求。修改配置文件web.xml: 将Struts2处理所有web请求的过滤器配置 <filter-mapping>               <filter-name>struts2</filter-name>               <url-pattern>/*</url-pattern>        </filter-mapping> 改为:仅处理.action或.jsp请求 <filter-mapping>               <filter-name>struts2</filter-name>               <url-pattern>*.action</url-pattern>        </filter-mapping>        <filter-mapping>               <filter-name>struts2</filter-name>               <url-pattern>*.jsp</url-pattern>        </filter-mapping> 备注:以上配置文件的更改会造成Struts2 标签在页面中不显示        应该在web.xml文件中加入以下配置: <filter-mapping>               <filter-name>struts2</filter-name>               <url-pattern>/struts/*</url-pattern>        </filter-mapping>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值