我在liferay 6.2中创建了一个示例portlet,因为我需要用法语打印unicode值。
我在src文件夹中创建了language_fr_FR.properties文件,在我的jsp页面中我打印了该值。
google.maps.places.SearchBox
jsp page
results.noresults = No r\u00E9sultats (language_fr_FR.prop)
在jsp中我得到的消息就像 没有r�sultats
任何人都可以告诉我这个unicode翻译在liferay中执行的类或方法。
答案 0 :(得分:0)
出于某种原因,Liferay的语言属性文件需要使用UTF-8编码,而不是典型的Java编码ISO-8859-1(或转义字符)。
有时很难说服你的IDE这确实是预期的编码,但它确实有效。
答案 1 :(得分:0)
确保拥有正确属性文件的一种方法是在xx.properties.native中编写,无论编码如何,都在构建时调用native2ascii任务。这应该会导致一个非ASCII字符编码为Unicode的文件。 如果要直接在xxx.properties中使用区域字符编写,则必须确保使用UTF-8编码,并且IDE有时不会自动执行此操作。 Liferay IDE使用UTF-8编辑最新版本的属性文件,因此您应该能够在属性文件中只编写常规法语,而忘记转换为Unicode。 无论如何,这就是理论。我对此感到头疼。