Search code examples
authenticationjbossstruts2liferayportal

Get the current user Liferay using a simple Java code


I'm working with : Liferay 6.0.6 with JBoss 5.1 and Struts2.

My question is, how to get the current user in Liferay once logged in, using a Java code.


Solution

  • In your doView/processAction method do following

    User user = (User) request.getAttribute(WebKeys.USER);
    

    or use the ThemeDisplay object. It contains another information like companyId, groupId, ...

    ThemeDisplay td  =(ThemeDisplay)request.getAttribute(WebKeys.THEME_DISPLAY);
    User user = td.getUser();
    

    Classes ThemeDisplay, User nad WebKeys are part of portal-service.jar.

    If you need just some id to identify current user you can also use

    String userId = request.getRemoteUser();
    

    This solution is not Liferay specific and should be portable among jsr-286 portals.