Как перенаправить на домашнюю страницу, если пользователь заходит на страницу входа после входа в систему?

Вот мой весенний конфигурационный файл безопасности:

<http pattern="/auth/login" security="none" />
<http pattern="/auth/loginFailed" security="none" />
<http pattern="/resources/**" security="none" />

<http auto-config="true" access-decision-manager-ref="accessDecisionManager">
    <intercept-url pattern="/auth/logout" access="permitAll"/>
    <intercept-url pattern="/admin/**" access="ADMINISTRATIVE_ACCESS"/>
    <intercept-url pattern="/**" access="XYZ_ACCESS"/>

    <form-login
        login-page="/auth/login"
        authentication-failure-url="/auth/loginFailed"
        authentication-success-handler-ref="authenticationSuccessHandler" />
    <logout logout-url="/auth/logout" logout-success-url="/auth/login" />
</http>

authenticationSuccessHandler расширяетSavedRequestAwareAuthenticationSuccessHandler обеспечение перенаправления пользователя на страницу, которую он первоначально запрашивал.

Тем не менее, так как/auth/login помечен какsecurity="none"Я не могу успешно перенаправить пользователя на домашнюю страницу, если он заходит на страницу входа после входа в систему. Я считаю, что это правильноПользовательский опыт тоже.

Я попробовал ниже, ноPrincipal объект всегдаnullпредположительно из-заsecurity="none" атрибут снова.

@RequestMapping(value = "/auth/login", method = GET)
public String showLoginForm(HttpServletRequest request, Principal principal) {
    if(principal != null) {
        return "redirect:/";
    }

    return "login";
}

Ответы на вопрос(6)

Ваш ответ на вопрос