【问题标题】:Form Encoding Problems on GRAILS 2.0GRAILS 2.0 上的表单编码问题
【发布时间】:2012-06-01 19:49:03
【问题描述】:

我有一个 Grails 应用程序,它在各处都配置为 UTF-8。在运行调试版本时,标头说Content-Type:text/html;charset=utf-8,并且元标记同意。浏览器将页面识别为 UTF-8 并正确显示字符。

发布表单时,浏览器会正确地发送以 UTF-8 编码的表单。但是,当通过params.paramname 读取数据时,数据看起来是乱码; maçã 变为 maçã

经过进一步检查,该表单似乎正在发送 UTF-8 数据,但 Grails 似乎尝试将其读取为 ISO-8859-1。在表单上设置accept-charset="ISO-8859-1" 可以确认这个问题,因为它可以解决问题。

我在 applicationContext.xml 上也有这个:

<bean id="characterEncodingFilter" class="org.springframework.web.filter.CharacterEncodingFilter">
    <property name="encoding">
        <value>utf-8</value>
    </property>
    <property name="forceEncoding">
        <value>true</value>
    </property>
</bean>

除了将accept-charset="ISO-8859-1"添加到应用程序中的所有表单之外,还有其他解决方案吗?

谢谢。

【问题讨论】:

    标签: forms grails encoding utf-8


    【解决方案1】:

    我认为您遇到了与 Grails request parameters encoding issue in Tomcat 相同的问题 - Burt 的回答或 cmets 应该会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-01-02
      • 1970-01-01
      • 1970-01-01
      • 2012-03-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多