用户A ---->具有“XYZ”角色并且具有“ABC”作为主站点用户B ----> 具有“PQR”角色并且具有“DEF”作为主站点
每当用户A登录时,我需要将他重定向到站点“ABC”而不是默认的访客站点。 每当用户B登录时,我需要将他重定向到站点“DEF”而不是默认的访客站点。
通过钩子我已经实现了这个
hook属性: login.events.post = com.mytest.portal.events.MyLoginPostAction
然后在MyLoginPostAction中我检查了用户角色,然后将他重定向到相应的站点。
现在,用户A已经订阅了任何网站上的博客。他收到一封包含该博客链接的电子邮件。
用户A已注销,然后他尝试通过直接链接访问该博客。由于用户A未登录,因此他被重定向到登录页面。 在登录时,他被重定向到站点“ABC”而不是去那个博客。这是因为我正在将用户重定向到主站点。
那么我怎样才能实现这种情况,即当用户在未登录时尝试访问该博客页面然后登录时,他应该转到该博客页面,当用户只是尝试登录到门户网站时,他应该重定向到主页现场。
答案 0 :(得分:1)
您可以在动作类中获取lastpath对象
request.getSession().getAttribute("LAST_PATH")
根据lastpath对象的路径值,您可以确定重定向的位置。
答案 1 :(得分:0)
通过直接链接进行必要的登录,Liferay将前向路径设置为url参数。您可以从请求中读取redirect
参数,并决定是否转发到特定页面。