2012-06-01 43 views
1

我有一个Grails应用程序,它可以在任何地方配置为UTF-8。在运行调试版本时,标题表示Content-Type:text/html;charset=utf-8,并且meta标记同意。浏览器将页面标识为UTF-8并正确显示字符。GRAILS 2.0上的表单编码问题

发布表单时,浏览器正确地将其发送编码为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"一切形式的应用程序中的解决方案吗?

谢谢。

回答