2012-05-09 4 views
12

Как я могу подключить текущего пользователя к порталу Liferay с помощью простого кода Java?Как я могу получить текущего пользователя в Liferay?

Я использую Liferay 6.0.6

+0

Смотреть это: http://stackoverflow.com/questions/10448193/get-the-current-user-liferay-using-a-simple-java-code – dragon66

+0

Это возможно дубликат проблема упомянутый @ дракон66. Это также может помочь http://stackoverflow.com/questions/970986/accessing-the-user-from-a-liferay-portlet –

ответ

2

В Java Код:

  • UserLocalServiceUtil.getXXX методы есть, выбрать, как вы хотите.

В кодексе JSP:

  • themeDisplay.getUserId() даст вам текущий идентификатор пользователя
  • themeDisplay.getUser() даст вам объект текущего пользователя.
22

Просто:

User currentUser = PortalUtil.getUser(request); 
9

В вашем doView методе/processAction сделайте следующее

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

или использовать объект ThemeDisplay. Он содержит другую информацию, как CompanyID, GroupID, ...

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

Классы ThemeDisplay, Пользователь и WebKeys являются частью портала-service.jar.

Если вам нужна только некоторый идентификатор для идентификации текущего пользователя, вы можете также использовать

String userId = request.getRemoteUser(); 

Это решение не Liferay специфична и должны быть переносимыми между JSR-286 порталами.

Источник: Get the current user Liferay using a simple Java code

Смежные вопросы