2016-04-25 11 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); 
関連する問題