Liferay-获取站点的默认语言(区域设置)

Liferay-获取站点的默认语言(区域设置),liferay,locale,default,liferay-6,Liferay,Locale,Default,Liferay 6,我需要以编程方式获取站点的默认区域设置。因此,我: 创建一个默认语言设置为英语(en_us)的新站点 创建第二个站点,默认语言设置为德语(de_de) 在我的代码中,我尝试执行以下操作: CompanyThreadLocal.setCompanyId(portletDataContext.getCompanyId()); final Locale locale = LocaleUtil.getDefault(); 但这两个站点都有“en_us”,这是门户默认的语言环境 在我的Portlet

我需要以编程方式获取站点的默认区域设置。因此,我:

  • 创建一个默认语言设置为英语(en_us)的新站点
  • 创建第二个站点,默认语言设置为德语(de_de)
在我的代码中,我尝试执行以下操作:

CompanyThreadLocal.setCompanyId(portletDataContext.getCompanyId());
final Locale locale = LocaleUtil.getDefault();
但这两个站点都有“en_us”,这是门户默认的语言环境

在我的
PortletDataHandler
实现的导出/导入函数中需要这个。否则,我将始终使用错误的默认语言将数据从staging导出到live

我正在运行Liferay 6.1.20 EE


提前感谢,在Liferay 6.2中,Fabi

您只需执行以下操作:

Locale defaultLocale = PortalUtil.getSiteDefaultLocale(groupId);

当您指的是站点时,是指同一门户实例中的Liferay站点,还是指不同的门户实例?在控制面板中,我打开了portlet“站点”,并添加了问题中提到的两个站点。我认为它们在Liferay 5中被称为
社区
。我猜它们在同一个门户实例中。您可以通过它们的
groupId
来区分它们。您是如何从控制面板为站点设置语言环境的?我问这个问题的原因是,在Liferay 6.1中,我没有看到从控制面板将区域设置关联到站点的方法。我知道我可以为门户实例设置区域设置这是我的错。我正在为网站使用一个自定义模板,它有一个选项卡来设置默认语言。我的问题的解决方案是从这个模板中获取语言。