0

在我的 Portlet 中,我在会话中设置了一些我希望在 Liferay 使用的速度模板中使用的属性。

我将属性设置PortletSession如下:

portletSession.setAttribute("key", "value", PortletSession.APPLICATION_SCOPE);

现在我希望在我home.vm的 Liferay 模板中使用这些,但无论我尝试什么,都没有效果:

$request.get("key") 
$request.getAttribute("key") 
$request.getSession().getAttribute("key")
$session.getAttribute("key")

我什至把钥匙放在了portal.properties中:

session.shared.attributes=key

但这似乎也不起作用。谁能指出我正确的方向?

4

2 回答 2

2

自己找到了答案。

显然我需要设置private-session-attributes为false。我之前尝试过,但是 DTD 非常具体地需要标记的位置。

将其放置在正确的位置后,它起作用了。

于 2013-07-12T09:32:57.987 回答
0

将“LIFERAY_SHARED_”前缀添加到会话属性名称就足够了,因为 session.shared.attributes 属性的值默认包含它。

于 2017-05-10T15:40:40.510 回答