2012-06-08 47 views
1

在我們的portlet中,我們試圖使用Liferay.Language.get("key")來訪問我們的javascript文件中的語言屬性。「Liferay.Language.get」javascript調用返回鍵而不是值

但是Liferay.Language.get("key")返回密鑰而不是關聯的值。

有沒有人遇到類似的問題?

我們使用的是Liferay 6.1 EE。並且已經看到了LPS-16513

最奇怪的部分是它在我們的本地盒子上工作,但在服務器上失敗。

除了使用ext以外的任何指針?

回答

1

根據您提供的信息,我最好的猜測是您要求的密鑰沒有與其關聯的翻譯 - 對於這些返回密鑰是默認行爲。

但是,這個問題很老,你可能已經解決了。 (如果是這樣,請告訴我們如何 - 如果你能記得原因)

1

我也無法獲取它在Portlet本身的資源包中指定的有效密鑰的值。它將檢索默認Liferay語言包中的鍵的值。一個黑客是一個的Liferay-hook.xml添加到您的portlet並添加類似以下內容吧:

<language-properties>Language.properties</language-properties> 

當我這樣做,現在會找回我的自定義/附加鍵。副作用是您的密鑰也將在Liferay全球上市。

0

這不適用於portlet級別language.pro。

我也有6.2 EE的問題,作爲替代我去了下面的解決方案。

<script> 
    var test = "<liferay-ui:message key='test'/>"; 
    console.log("This is working :: "+test) 
    </script> 

感謝, 薩加爾維亞斯

0

您還可以得到下面的代碼片段所需的值:

var value='<%=LanguageUtil.get(pageContext, "key") %>'; 
相關問題