`
fly_hyp
  • 浏览: 295835 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
社区版块
存档分类
最新评论

jspwiki中文问题的解决

阅读更多
操作方法修改tomcat

<Connector port="8080" maxThreads="150" minSpareThreads="25"
maxSpareThreads="75" enableLookups="false" redirectPort="8443"
acceptCount="100" debug="99" connectionTimeout="20000"
disableUploadTimeout="true" URIEncoding="UTF-8" />


下面是摘录内容:
http://hi.baidu.com/smallconan/blog/item/0aafc8ce7dd1b60b92457eec.html
迷上了JAVA,也迷上了JSPWIKI。
在JSPWIKI的官方站点上,中文问题一直都存在,具体表现是,当在搜索框内输入中文时,回复页的Search Of “”中文关键字引用变成了乱码,点击Edit直接编辑的时候,想要出现的页面标题不是中文,还是乱码。
研究了不少时间,在官方站点上反映的解决方法是修改JSP代码,加入UTF-8的头标志,使用ShortURLContructor,还有就是把 getParameter全部改成safeParameter。经过一个晚上的劳动终于发现问题的根源了。
罪魁祸首:Tomcat和FileProvider。
改进方法:使用JDBCProvider作为Wiki页面的控制层,文本方式保存文件,以来磁盘空间利用率非常低,到后期有大量的数据后简直无法更新和迁移数据,所以希望大家及早地改变,否则到后面不要后悔莫及。Mysql默认的编码方式就是UTF-8,大家就不要改了。在Tomcat的 Server.xml中的Connector加入属性URIEncoding="UTF-8",最后把各个JSP中都加入UTF-8的标记。
应该可以完美的解决了。使用的jspwiki版本是2.4.11cvs和官方的一样。
http://www.blogjava.net/leekiang/archive/2007/10/17/153685.html

tomcat 的URIEncoding的作用(转)

Posted on 2007-10-17 21:47 leekiang 阅读(3072) 评 论(0)  编 辑  收藏 所属分类: tomcat weblogic <!-- <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"> <rdf:Description rdf:about="http://www.blogjava.net/leekiang/archive/2007/10/17/153685.html" dc:identifier="http://www.blogjava.net/leekiang/archive/2007/10/17/153685.html" dc:title="tomcat的URIEncoding的作用(转)" trackback:ping="http://www.blogjava.net/leekiang/services/trackbacks/153685.aspx" /> </rdf:RDF> -->

tomcat5中,为了保证get数据采用UTF8编码,在server.xml中进行了如下设置:

<Connector port="8080" maxThreads="150" minSpareThreads="25"
maxSpareThreads="75" enableLookups="false" redirectPort="8443"
acceptCount="100" debug="99" connectionTimeout="20000"
disableUploadTimeout="true" URIEncoding="UTF-8"/>

这里指定了get时候的数据编码。但是,当使用IIS作为webserver转发servlet/jsp请求给Tomcat时候,这个设置却失效了。其实 原因很简单:IIS是通过AJP协议,把请求转发到Tomcat监听的8009端口上的,所以这里针对8080的设置自然就无效了。正确的方法是进行下面 的设置:

<Connector port="8009" enableLookups="false" redirectPort="8443"
debug="0" protocol="AJP/1.3" URIEncoding="UTF-8"/>

分享到:
评论
1 楼 Vimesly 2011-02-27  
请问 你使用的jspwiki 数据全部都是存在mysql数据库吗?

相关推荐

Global site tag (gtag.js) - Google Analytics