具体的配置可参考: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":
 

 
  
  1. <Connector port="8080" 
  2. maxThreads="150" minSpareThreads="25" maxSpareThreads="75" 
  3. enableLookups="false" redirectPort="8443" acceptCount="100" 
  4. debug="0" connectionTimeout="20000"   
  5. disableUploadTimeout="true" URIEncoding="utf-8" />  
  6.  
  7. <Connector port="8009"   
  8. enableLookups="false" redirectPort="8443" debug="0" 
  9. protocol="AJP/1.3" URIEncoding="utf-8" />  


方法二:
使用useBodyEncodingForURI="true". 这个方法适合你的TOMCAT实例下需要跑多个不同Encoding的程序时。

 
  
  1. <... maxThreads="150" minSpareThreads="25" maxSpareThreads="75" 
  2. enableLookups="false" redirectPort="8443" acceptCount="100" 
  3. connectionTimeout="20000" disableUploadTimeout="true" useBodyEncodingForURI="true" />  
  4.  
  5. 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请求的过滤器配置

 
  
  1. <filter-mapping>  
  2.  
  3. <filter-name>struts2</filter-name>  
  4.  
  5. <url-pattern>/*</url-pattern>  
  6.  
  7. </filter-mapping>  
  8.  

改为:仅处理.action或.jsp请求

 
  
  1. <filter-mapping>  
  2.  
  3. <filter-name>struts2</filter-name>  
  4.  
  5. <url-pattern>*.action</url-pattern>  
  6.  
  7. </filter-mapping>  
  8.  
  9. <filter-mapping>  
  10.  
  11. <filter-name>struts2</filter-name>  
  12.  
  13. <url-pattern>*.jsp</url-pattern>  
  14.  
  15. </filter-mapping> 

备注:以上配置文件的更改会造成Struts2 标签在页面中不显示

应该在web.xml文件中加入以下配置:

 

 

 

 

 

 

 
  
  1. <filter-mapping>  
  2.  
  3. <filter-name>struts2</filter-name>  
  4.  
  5. <url-pattern>/struts/*</url-pattern>  
  6.  
  7. </filter-mapping> 

转自:http://hi.baidu.com/zyaping2008/blog/item/702801fc644f5b86b901a009.html