Example usage for com.liferay.portal.kernel.util WebKeys USER_PASSWORD

List of usage examples for com.liferay.portal.kernel.util WebKeys USER_PASSWORD

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.util WebKeys USER_PASSWORD.

Prototype

String USER_PASSWORD

To view the source code for com.liferay.portal.kernel.util WebKeys USER_PASSWORD.

Click Source Link

Usage

From source file:com.liferay.users.admin.web.internal.portlet.action.UpdatePasswordMVCActionCommand.java

License:Open Source License

@Override
protected void doProcessAction(ActionRequest actionRequest, ActionResponse actionResponse) throws Exception {

    try {//  ww w.j a v  a  2s . co  m
        User user = _portal.getSelectedUser(actionRequest);

        String newPassword1 = actionRequest.getParameter("password1");
        String newPassword2 = actionRequest.getParameter("password2");

        boolean passwordReset = ParamUtil.getBoolean(actionRequest, "passwordReset");

        PasswordPolicy passwordPolicy = user.getPasswordPolicy();

        if ((user.getLastLoginDate() == null) && ((passwordPolicy == null)
                || (passwordPolicy.isChangeable() && passwordPolicy.isChangeRequired()))) {

            passwordReset = true;
        }

        String reminderQueryQuestion = BeanParamUtil.getString(user, actionRequest, "reminderQueryQuestion");

        if (reminderQueryQuestion.equals(UsersAdmin.CUSTOM_QUESTION)) {
            reminderQueryQuestion = BeanParamUtil.getStringSilent(user, actionRequest,
                    "reminderQueryCustomQuestion");
        }

        String reminderQueryAnswer = BeanParamUtil.getString(user, actionRequest, "reminderQueryAnswer");

        if (Validator.isNotNull(newPassword1) || Validator.isNotNull(newPassword2)) {

            _userLocalService.updatePassword(user.getUserId(), newPassword1, newPassword2, passwordReset);
        }

        _userLocalService.updatePasswordReset(user.getUserId(), passwordReset);

        if (Validator.isNotNull(reminderQueryQuestion) && Validator.isNotNull(reminderQueryAnswer)) {

            _userLocalService.updateReminderQuery(user.getUserId(), reminderQueryQuestion, reminderQueryAnswer);
        }

        ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY);

        if ((user.getUserId() == themeDisplay.getUserId()) && PropsValues.SESSION_STORE_PASSWORD
                && Validator.isNotNull(newPassword1)) {

            PortletSession portletSession = actionRequest.getPortletSession();

            portletSession.setAttribute(WebKeys.USER_PASSWORD, newPassword1, PortletSession.APPLICATION_SCOPE);
        }
    } catch (Exception e) {
        if (e instanceof NoSuchUserException || e instanceof PrincipalException) {

            SessionErrors.add(actionRequest, e.getClass());

            actionResponse.setRenderParameter("mvcPath", "/error.jsp");
        } else if (e instanceof UserPasswordException) {
            SessionErrors.add(actionRequest, e.getClass(), e);

            String redirect = _portal.escapeRedirect(ParamUtil.getString(actionRequest, "redirect"));

            if (Validator.isNotNull(redirect)) {
                sendRedirect(actionRequest, actionResponse, redirect);
            }
        } else {
            throw e;
        }
    }
}

From source file:pt.knowledgeworks.liferay.ext.event.ContainerLoginAction.java

License:Open Source License

@Override
public void run(HttpServletRequest req, HttpServletResponse res) throws ActionException {
    HttpSession session = req.getSession();

    User user = (User) session.getAttribute(WebKeys.USER);
    String password = (String) session.getAttribute(WebKeys.USER_PASSWORD);
    boolean isSessionPassword = true;

    if (user != null) {
        try {//from ww w .j  a v a2  s .  c o m
            String username = user.getLogin();
            if (password == null) {
                isSessionPassword = false;
                password = user.getPassword();
            }
            try {
                req.login(username, password);
                LOG.info("CAUTH0001: User '" + username + "' logged on container");
                if (GetterUtil.get(PropsUtil.get("ext.remove.session.store.password"), false)) {
                    session.removeAttribute(WebKeys.USER_PASSWORD);
                }
            } catch (ServletException ex) {
                String message = "CAUTH0010: Unable to perform container login for user=" + username
                        + "; isSessionPassword=" + isSessionPassword;
                LOG.warn(message + " :: " + ex);
                if (LOG.isTraceEnabled()) {
                    LOG.trace(message, ex);
                }
            }
        } catch (PortalException | SystemException ex) {
            String message = "CAUTH0011: Unxpected error while retring information on user " + user;
            LOG.warn(message + " :: " + ex);
            throw new ActionException(message, ex);
        }
    } else {
        String message = "CAUTH0012: User not found in session";
        LOG.warn(message);
        throw new ActionException(message);
    }
}