List of usage examples for com.liferay.portal.kernel.exception UserReminderQueryException UserReminderQueryException
public UserReminderQueryException(Throwable cause)
From source file:com.liferay.login.web.internal.portlet.action.ForgotPasswordMVCActionCommand.java
License:Open Source License
protected void sendPassword(ActionRequest actionRequest, ActionResponse actionResponse) throws Exception { ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY); Company company = themeDisplay.getCompany(); User user = getUser(actionRequest);//from ww w. j a va 2 s . c o m if (PropsValues.USERS_REMINDER_QUERIES_ENABLED) { if (PropsValues.USERS_REMINDER_QUERIES_REQUIRED && !user.hasReminderQuery()) { throw new RequiredReminderQueryException( "No reminder query or answer is defined for user " + user.getUserId()); } String answer = ParamUtil.getString(actionRequest, "answer"); String reminderQueryAnswer = user.getReminderQueryAnswer(); if (!reminderQueryAnswer.equals(answer)) { throw new UserReminderQueryException("Reminder query answer does not match answer"); } } PortletPreferences portletPreferences = actionRequest.getPreferences(); String languageId = LanguageUtil.getLanguageId(actionRequest); String emailFromName = portletPreferences.getValue("emailFromName", null); String emailFromAddress = portletPreferences.getValue("emailFromAddress", null); String emailToAddress = user.getEmailAddress(); String emailParam = "emailPasswordSent"; if (company.isSendPasswordResetLink()) { emailParam = "emailPasswordReset"; } String subject = portletPreferences.getValue(emailParam + "Subject_" + languageId, null); String body = portletPreferences.getValue(emailParam + "Body_" + languageId, null); LoginUtil.sendPassword(actionRequest, emailFromName, emailFromAddress, emailToAddress, subject, body); HttpServletRequest request = _portal.getHttpServletRequest(actionRequest); SessionMessages.add(request, "passwordSent"); sendRedirect(actionRequest, actionResponse, null); }