2016-04-25 70 views
1

我需要改變網站的編程語言在Liferay中和Im卡住。我以爲我可以使用LanguageUtil類,但我不知道如何。更改站點語言編程

有什麼辦法,以編程方式更改Liferay語言? (我知道我可以在管理面板中做到這一點,但我需要在我的代碼中擁有該功能)。

現在我的代碼如下所示:

@ResourceMapping("changeLanguageToEnglish") 
public void changeLanguageToEnglish(){ 
     LanguageUtil langUtil = new LanguageUtil(); 
     //langUtil.setLanguage(language); 
} 

回答

1

我可以利用這樣做所述portal-ext.properties:

# 
# Set the default locale used by Liferay. This locale is no longer set at 
# the VM level. See LEP-2584. 
# 
user.country=US 
user.language=en 

而且通過鉤

<hook> 
    <language-properties>content/Language_en.properties</language-properties> 
    <language-properties>content/Language_fa.properties</language-properties> 
</hook> 

並通過一個門戶

Change languaje portlet

商祺!

2

我沒有嘗試,但我認爲你必須改變區域設置是用戶會話:

String languageId = "en_US"; 
Locale locale = LocaleUtil.fromLanguageId(languageId); 
session.setAttribute(org.apache.struts.Globals.LOCALE_KEY, locale);