您好我想在页面上询问错误编码的问题根源。
这个问题非常具体,因为页面的第一部分具有良好的编码,第二部分被破坏。 此外,它只出现在某些情况下,而不是总是。
最奇怪的是,它开始出现在一条消息的中间,在此消息之后,页面的其余部分的字符编码很糟糕。
此消息包含在JSP中,代码部分为<fmt:message key="the.text.wchich.makes.problems"/>
问题与JSP无关,因为错误的编码出现在消息中间。
Gratulujeme,totočíslossmôžetezarezervovaťkliknutínamtalačidloPokračovať。
但有时输出为
Gratulujeme,totočíslossmôžetezarezervovaťkliknut mnatlaÄidloPokraÄovaÅ¥。
或
Gratulujeme,totočíslosimô ¾etezarezervovaÅ¥kliknutÃnatalaÄidloPokraÄovaÅ¥。
所以这可能不是数据库中输入错误文本的错误。
我们正在使用 Liferay 6.0, jsp , spring 。本地化字符串存储在 Oracle 11g 数据库中。
那么,编码怎么可能在页面中间开始破解?
答案 0 :(得分:0)
您可能需要在JSP中指定编码为:
<%@ page contentType="text/html; charset=UTF-8" %>
您应该能够通过CharacterEncodingFilter forceEncoding
参数设置获得相同的结果,并映射到*
路径+ INCLUDE
发送。
答案 1 :(得分:0)
这只是一个建议。尝试从themeDisplay对象设置区域设置。
&lt; fmt:setLocale value =“&lt;%= themeDisplay.getLocale()&gt;”/&gt;
查看fmt:message是否有助于识别正确的消息区域。
注意:这要求您为用户或门户级别设置适当的区域设置。