精华帖 (0) :: 良好帖 (0) :: 新手帖 (1) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2004-08-24
1、webwork.properties文件中,添加: webwork.i18n.encoding = GB2312 它主要是用来设置WebWork UI标签库的编码,如果不设置它将通过 System.getProperty("file.encoding")来获取默认字符编码。 2、velocity.properties文件中,添加: input.encoding=GB2312 output.encoding=GB2312 default.contentType=text/html; charset=GB2312 它是用来设置.vm页面的编码方式 3、写一个Filter,将编码设置为GB2312。详细请看附件中的SetCharacterEncodingFilter文件和Web.xml的配置。 它解决Action数据传递时的编码。 建议:中文编码推荐统一使用:GBK,它的字符集比GB2312更全。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2004-08-24
为啥不用UTF-8呢?
|
|
返回顶楼 | |
发表时间:2004-08-24
我也觉得使用UTF-8更好。
使用UTF-8可能Java代码的编码也要为UTF-8 |
|
返回顶楼 | |
发表时间:2004-08-24
why? java代码里面又不会出现中文。
|
|
返回顶楼 | |
发表时间:2004-08-24
我碰到过这样的问题,具体的原因我也没有去仔细查。
|
|
返回顶楼 | |
发表时间:2004-08-24
http://elab.cn/qyshop/front/browProduct.action
注:此程序在windows 平台上运行正常。。。 为什么在 linux+apache+tomcat 5.18 下会报这种错误,如何解决?? HTTP Status 500 - -------------------------------------------------------------------------------- type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception javax.servlet.ServletException: Servlet.init() for servlet webwork threw exception org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:164) org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:206) org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:324) org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:395) org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:673) org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:615) org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:786) org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683) java.lang.Thread.run(Thread.java:534) root cause java.lang.RuntimeException: Unable to instantiate VelocityEngine! com.opensymphony.webwork.views.velocity.VelocityManager.newVelocityEngine(VelocityManager.java:333) com.opensymphony.webwork.views.velocity.VelocityManager.init(VelocityManager.java:146) com.opensymphony.webwork.dispatcher.ServletDispatcher.init(ServletDispatcher.java:170) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:164) org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:206) org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:324) org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:395) org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:673) org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:615) org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:786) org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683) java.lang.Thread.run(Thread.java:534) note The full stack trace of the root cause is available in the Tomcat logs. -------------------------------------------------------------------------------- Apache Tomcat/5.0.18 |
|
返回顶楼 | |
发表时间:2004-08-30
设置webwork.properties和velocity.properties的
字符集后,页面中文显示正常。但是页面form传递的字符还是乱码。配置了filter,request.setCharacterEncoding("GBK"); response.setContentType("text/html; CHARSET=utf8"); 调用后,依然乱码,都是问号。 看到有人说创建WrapServletDispatcher,不知道怎么搞。 |
|
返回顶楼 | |
发表时间:2004-08-30
刚才试了WrapServletDispatcher也不行。
因为很简单,在调用.action之前先调用encodefilter, 而encodefilter就已经显示读取的param全部都是 问号,那么,dispatcher读到的肯定也是问号。 真不知道这个乱码怎么办了 |
|
返回顶楼 | |
发表时间:2004-08-31
打开tomcat的server.xml文件
<Connector port="80" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="GBK"/> 找了好多地方,才在j道上找到的 http://www.jdon.com/jive/article.jsp?forum=16&thread=13852[/url][/b] |
|
返回顶楼 | |
发表时间:2004-09-05
我根本没遇到乱码的问题
webwork.i18n.encoding = GBK character.encoding=GBK content.type=text/html;CHARSET=utf8 |
|
返回顶楼 | |