Liferay门户网站:UTF-8编码

时间:2015-01-16 13:40:04

标签: liferay liferay-6

我遇到了liferay门户网站编码问题。像ščšć这样的特殊(UTF8)字符显示不正确(所有这些字符都显示为 )

标题看起来很好:

<meta content="text/html; charset=UTF-8" http-equiv="content-type" />

我将liferay从6.0.5升级到6.1.2。 6.0.5一切正常。 首先我认为language.properties文件可能是问题,但portlet中的文本也被破坏了。

我正在使用weblogic webserver 10.3.4。

编辑: 来自portlet的非翻译静态文本正确显示。

但是potlets中的翻译文本(使用liferay-ui:message标签)已损坏。

有什么想法吗?

3 个答案:

答案 0 :(得分:3)

编码可能在许多不同的级别上出错:数据库应使用UTF-8,驱动程序也配置为使用此编码。 appserver(和Java的)默认编码也可能会发挥作用。然后webserver / appserver连接和代理可以进入它。

在上一版本工作时,开始检查数据库以及数据库驱动程序使用的内容(例如驱动程序的URL)。准备好使用备份。从包含混合编码的数据库中恢复将非常困难。

答案 1 :(得分:1)

我通过更改JVM设置来解决此问题。 在weblogics文件setDomainEnv.cmd中,我更改了Dfile.encoding。 使用liferay 6.0.5我正在使用:

set WLS_MEM_ARGS_32BIT=-Xms256m -Xmx1024m -Dfile.encoding=ISO-8859-2

Liferay 6.1.2要求:

set WLS_MEM_ARGS_32BIT=-Xms256m -Xmx1024m -Dfile.encoding=UTF-8

答案 2 :(得分:0)

您需要做的就是portal-ext.properties添加file.encoding=UTF-8。这解决了我的问题