Liferay自定义目标网页或最后一条路径?

时间:2014-01-07 12:02:46

标签: liferay liferay-6

  

用户A ---->具有“XYZ”角色并且具有“ABC”作为主站点用户B ---->   具有“PQR”角色并且具有“DEF”作为主站点

每当用户A登录时,我需要将他重定向到站点“ABC”而不是默认的访客站点。 每当用户B登录时,我需要将他重定向到站点“DEF”而不是默认的访客站点。

通过钩子我已经实现了这个

  

hook属性:   login.events.post = com.mytest.portal.events.MyLoginPostAction

然后在MyLoginPostAction中我检查了用户角色,然后将他重定向到相应的站点。

现在,用户A已经订阅了任何网站上的博客。他收到一封包含该博客链接的电子邮件。

用户A已注销,然后他尝试通过直接链接访问该博客。由于用户A未登录,因此他被重定向到登录页面。 在登录时,他被重定向到站点“ABC”而不是去那个博客。这是因为我正在将用户重定向到主站点。

那么我怎样才能实现这种情况,即当用户在未登录时尝试访问该博客页面然后登录时,他应该转到该博客页面,当用户只是尝试登录到门户网站时,他应该重定向到主页现场。

2 个答案:

答案 0 :(得分:1)

您可以在动作类中获取lastpath对象 request.getSession().getAttribute("LAST_PATH")

根据lastpath对象的路径值,您可以确定重定向的位置。

答案 1 :(得分:0)

通过直接链接进行必要的登录,Liferay将前向路径设置为url参数。您可以从请求中读取redirect参数,并决定是否转发到特定页面。