Example usage for org.springframework.web.servlet.mvc.support RedirectAttributes getFlashAttributes

List of usage examples for org.springframework.web.servlet.mvc.support RedirectAttributes getFlashAttributes

Introduction

In this page you can find the example usage for org.springframework.web.servlet.mvc.support RedirectAttributes getFlashAttributes.

Prototype

Map<String, ?> getFlashAttributes();

Source Link

Document

Return the attributes candidate for flash storage or an empty Map.

Usage

From source file:com.excilys.ebi.bank.web.messages.MessageHelper.java

public static void addFlashMessage(RedirectAttributes redirectAttributes, Message message) {

    @SuppressWarnings("unchecked")
    List<Message> messages = (List<Message>) redirectAttributes.getFlashAttributes()
            .get(MESSAGES_REDIRECT_ATTRIBUTE_NAME);
    if (messages == null) {
        redirectAttributes.addFlashAttribute(MESSAGES_REDIRECT_ATTRIBUTE_NAME, newArrayList(message));
    } else {/*from  w  w w .  jav  a  2 s  . co  m*/
        messages.add(message);
    }
}

From source file:de.hybris.platform.acceleratorstorefrontcommons.controllers.util.GlobalMessages.java

public static void addFlashMessage(final RedirectAttributes model, final String messageHolder,
        final String messageKey, final Object[] attributes) {
    final GlobalMessage message = new GlobalMessage();
    message.setCode(messageKey);/*  w  ww .  ja va  2 s  . co  m*/
    message.setAttributes(attributes != null ? Arrays.asList(attributes) : Collections.emptyList());

    final Map<String, ?> flashModelMap = model.getFlashAttributes();
    if (flashModelMap.containsKey(messageHolder)) {
        final List<GlobalMessage> messages = new ArrayList<>(
                (List<GlobalMessage>) flashModelMap.get(messageHolder));
        messages.add(message);
        model.addFlashAttribute(messageHolder, messages);
    } else {
        model.addFlashAttribute(messageHolder, Collections.singletonList(message));
    }
}

From source file:com.exxonmobile.ace.hybris.storefront.controllers.util.GlobalMessages.java

public static void addFlashMessage(final RedirectAttributes model, final String messageHolder,
        final String messageKey, final Object[] attributes) {
    final GlobalMessage message = new GlobalMessage();
    message.setCode(messageKey);/*from  w ww  . ja va2s.  c  o m*/
    message.setAttributes(attributes != null ? Arrays.asList(attributes) : Collections.emptyList());

    final Map<String, ?> flashModelMap = model.getFlashAttributes();
    if (flashModelMap.containsKey(messageHolder)) {
        final List<GlobalMessage> messages = new ArrayList<GlobalMessage>(
                (List<GlobalMessage>) flashModelMap.get(messageHolder));
        messages.add(message);
        model.addFlashAttribute(messageHolder, messages);
    } else {
        model.addFlashAttribute(messageHolder, Collections.singletonList(message));
    }
}

From source file:com.trenako.web.controllers.ControllerMessageTests.java

@Test
public void shouldAppendItselfToRedirectAttributes() {
    RedirectAttributes redirectAtts = new RedirectAttributesModelMap();
    ControllerMessage msg = ControllerMessage.info("info message", 1, "arg2");

    msg.appendToRedirect(redirectAtts);/*from   w ww  . jav a 2 s  .c  om*/

    Map<String, ?> flashMap = redirectAtts.getFlashAttributes();
    assertTrue("Map don't contain the message", flashMap.containsKey("message"));
    assertEquals("message{type: info, message: info message, args: [1, arg2]}",
            flashMap.get("message").toString());
}

From source file:info.rmapproject.webapp.controllers.SearchController.java

/**
 * GETs the search form./*from w  w  w  . j a  va  2 s .c om*/
 *
 * @param model the Spring model
 * @param redirectAttributes holds flash attributes passed from a redirect
 * @return the search page
 */
@RequestMapping(method = RequestMethod.GET)
public String searchForm(Model model, RedirectAttributes redirectAttributes) {
    logger.info("Search page");

    if (redirectAttributes.containsAttribute("search")) {
        //true if redirected back to form due to error, for example.
        model.addAttribute("search", redirectAttributes.getFlashAttributes().get("search"));
        model.addAttribute("notice", redirectAttributes.getFlashAttributes().get("notice"));
    } else {
        //otherwise initiate search command.
        SearchCommand search = new SearchCommand();
        model.addAttribute("search", search);
    }
    return "search";
}

From source file:org.wallride.web.controller.guest.user.SignupController.java

@RequestMapping(method = RequestMethod.POST)
public String signup(@Valid @ModelAttribute("form") SignupForm form, BindingResult errors,
        RedirectAttributes redirectAttributes) {
    redirectAttributes.addFlashAttribute(FORM_MODEL_KEY, form);
    redirectAttributes.addFlashAttribute(ERRORS_MODEL_KEY, errors);

    if (errors.hasErrors()) {
        return "redirect:/signup?step.edit";
    }/*  w  w  w . ja  v  a2  s . c o m*/

    try {
        signupService.signup(form.toSignupRequest(), User.Role.VIEWER);
    } catch (DuplicateLoginIdException e) {
        errors.rejectValue("loginId", "NotDuplicate");
        return "redirect:/signup?step.edit";
    } catch (DuplicateEmailException e) {
        errors.rejectValue("email", "NotDuplicate");
        return "redirect:/signup?step.edit";
    }

    redirectAttributes.getFlashAttributes().clear();
    return "redirect:/";
}

From source file:org.wallride.web.controller.guest.user.PasswordResetController.java

@RequestMapping(method = RequestMethod.POST)
public String token(@Validated @ModelAttribute(FORM_MODEL_KEY) PasswordResetForm form, BindingResult errors,
        BlogLanguage blogLanguage, RedirectAttributes redirectAttributes) {
    redirectAttributes.addFlashAttribute(FORM_MODEL_KEY, form);
    redirectAttributes.addFlashAttribute(ERRORS_MODEL_KEY, errors);

    if (errors.hasFieldErrors("email")) {
        return "redirect:/password-reset";
    }/*from  w  w w  .ja  v a 2s  .  co  m*/

    PasswordResetTokenCreateRequest request = form.toPasswordResetTokenCreateRequest(blogLanguage);
    PasswordResetToken passwordResetToken;
    try {
        passwordResetToken = userService.createPasswordResetToken(request);
    } catch (EmailNotFoundException e) {
        errors.rejectValue("email", "UsedEmail");
        return "redirect:/password-reset";
    }

    redirectAttributes.getFlashAttributes().clear();
    redirectAttributes.addFlashAttribute("passwordResetToken", passwordResetToken);
    return "redirect:/password-reset?step.token";
}

From source file:org.wallride.web.controller.guest.user.ProfileUpdateController.java

@RequestMapping(method = RequestMethod.PUT)
public String update(@Validated @ModelAttribute(FORM_MODEL_KEY) ProfileUpdateForm form, BindingResult errors,
        AuthorizedUser authorizedUser, RedirectAttributes redirectAttributes) {
    redirectAttributes.addFlashAttribute(FORM_MODEL_KEY, form);
    redirectAttributes.addFlashAttribute(ERRORS_MODEL_KEY, errors);

    if (errors.hasErrors()) {
        return "redirect:/settings/profile?step.edit";
    }/* w  w w .j a v  a 2  s  .  c  o m*/

    ProfileUpdateRequest request = new ProfileUpdateRequest().withUserId(authorizedUser.getId())
            .withEmail(form.getEmail()).withLoginId(form.getLoginId())
            .withName(form.getName().getFirstName(), form.getName().getLastName());

    User updatedUser;
    try {
        updatedUser = userService.updateProfile(request, authorizedUser);
    } catch (DuplicateLoginIdException e) {
        errors.rejectValue("loginId", "NotDuplicate");
        return "redirect:/settings/profile?step.edit";
    } catch (DuplicateEmailException e) {
        errors.rejectValue("email", "NotDuplicate");
        return "redirect:/settings/profile?step.edit";
    }

    redirectAttributes.getFlashAttributes().clear();
    redirectAttributes.addFlashAttribute("updatedUser", updatedUser);
    return "redirect:/settings/profile";
}

From source file:org.wallride.web.controller.admin.analytics.GoogleAnalyticsUpdateController.java

@RequestMapping(method = RequestMethod.POST)
public String update(@PathVariable String language,
        @Validated @ModelAttribute(FORM_MODEL_KEY) GoogleAnalyticsUpdateForm form, BindingResult errors,
        @AuthenticationPrincipal AuthorizedUser authorizedUser, RedirectAttributes redirectAttributes) {
    redirectAttributes.addFlashAttribute(FORM_MODEL_KEY, form);
    redirectAttributes.addFlashAttribute(ERRORS_MODEL_KEY, errors);

    if (errors.hasErrors()) {
        return "redirect:/_admin/{language}/analytics/edit?step.edit";
    }/* w w w .j a  v  a2 s.c o m*/

    GoogleAnalyticsUpdateRequest request = new GoogleAnalyticsUpdateRequest();
    request.setBlogId(Blog.DEFAULT_ID);
    request.setTrackingId(form.getTrackingId());
    request.setProfileId(form.getProfileId());
    request.setCustomDimensionIndex(form.getCustomDimensionIndex());
    request.setServiceAccountId(form.getServiceAccountId());
    request.setServiceAccountP12File(form.getServiceAccountP12File());

    GoogleAnalytics updatedGoogleAnalytics;
    try {
        updatedGoogleAnalytics = blogService.updateGoogleAnalytics(request);
    } catch (GoogleAnalyticsException e) {
        errors.reject("GoogleAnalytics");
        return "redirect:/_admin/{language}/analytics/edit?step.edit";
    }

    redirectAttributes.getFlashAttributes().clear();
    redirectAttributes.addFlashAttribute("updatedGoogleAnalytics", updatedGoogleAnalytics);
    return "redirect:/_admin/{language}/analytics";
}

From source file:org.wallride.web.controller.guest.user.PasswordUpdateController.java

@RequestMapping(method = RequestMethod.PUT)
public String update(@Validated @ModelAttribute(FORM_MODEL_KEY) PasswordUpdateForm form, BindingResult errors,
        AuthorizedUser authorizedUser, RedirectAttributes redirectAttributes) {
    redirectAttributes.addFlashAttribute(FORM_MODEL_KEY, form);
    redirectAttributes.addFlashAttribute(ERRORS_MODEL_KEY, errors);

    if (!errors.hasFieldErrors("newPassword")) {
        if (!ObjectUtils.nullSafeEquals(form.getNewPassword(), form.getNewPasswordRetype())) {
            errors.rejectValue("newPasswordRetype", "MatchRetype");
        }//from w  ww. j a  va2 s .  c  o m
    }

    if (!errors.hasErrors()) {
        User user = userService.getUserById(authorizedUser.getId());
        PasswordEncoder passwordEncoder = new StandardPasswordEncoder();
        if (!passwordEncoder.matches(form.getCurrentPassword(), user.getLoginPassword())) {
            errors.rejectValue("currentPassword", "MatchCurrentPassword");
        }
    }

    if (errors.hasErrors()) {
        return "redirect:/settings/password?step.edit";
    }

    PasswordUpdateRequest request = new PasswordUpdateRequest().withUserId(authorizedUser.getId())
            .withPassword(form.getNewPassword());
    userService.updatePassword(request, authorizedUser);

    redirectAttributes.getFlashAttributes().clear();
    redirectAttributes.addFlashAttribute("updatedPassword", true);
    return "redirect:/settings/password";
}