Liferay:设置视图页面的标题名称

时间:2013-01-03 05:43:43

标签: java liferay

我有一个portlet,我想在其中设置标题作为不同的页面加载。我找到的解决方案是使用PortalUtil.addPageTitle (String myTitle, HttpServletRequest request)提到here。但我不知道这里以及如何使用它。任何的想法?只要它不是javascript方法,任何替代方案也会起作用。

1 个答案:

答案 0 :(得分:2)

PortalUtil.addPageTitle (String myTitle, HttpServletRequest request)

设置页面标题(htmlTitle)。不是portlet的标题。

有两个方法可以解决这个问题,

Liferay提供了一个通过portlet首选项设置标题的选项。

PortletPreferences portletSetup = PortletPreferencesFactoryUtil.getLayoutPortletSetup(layout, instanceId);
    Locale locale = new Locale("en", "US"); //straight to the point
    portletSetup.setValue("portlet-setup-title-" + LocaleUtil.toLanguageId(locale), title);
    portletSetup.setValue("portlet-setup-use-custom-title", "true");
    portletSetup.store();

在portlet类中,将标题设置为响应。

response.setTitle("Dynamic Title");

如果要更改页面标题,可以通过两种不同的方式进行设置。您可以使用控制面板为每页添加唯一标题

add title

另一种方法是通过编程(下面是伪代码)。

layout.setHtmlTitle("dynamic Title");
layoutLocalserviceUtil.updateLayout(layout);
相关问题