Печенье Spring Security «Запомнить меня» недоступно при первом запросе

После запроса на вход в систему я не могу получить файл cookie «Помни меня», но он прекрасно работает при следующем запросе к защищенной странице. Может ли кто-нибудь сказать мне, как я могу получить это прямо сейчас?

Я задаю cookie cookie в запросе на вход в систему, но не могу получить его после того, как Spring перенаправит обратно на исходный (защищенный) URL.

Шаг за шагом:

Браузер переходит на example.com/protectedSpring перенаправляет на страницу формы входаПосле успешного входа в систему SPRING_SECURITY_REMEMBER_ME_COOKIE устанавливается в очень тонкий настраиваемый подкласс org.springframework.security.web.authentication.rememberme.TokenBasedRememberMeServicesПохоже, Spring перенаправляет обратно на example.com/protected, без обратной передачи в браузер, и «сервлет» входа и защищенная страница обрабатываются одним потоком в Tomcat 6.Наш подкласс org.springframework.security.web.access.expression.WebSecurityExpressionRoot имеет методы, которые вызываются из метода <intercept-url pattern = "..." access = "method ()" />В нашем методе () request.getCookies () не выдает cookie-файл Запомнить меня при первом запросе, но после всех запросов.Наше приложение имеет некоторые проблемы, потому что отсутствует cookie ...

Моя теория до сих пор заключается в том, что я не понимаю SavedRequest должным образом.

Сгущенный конфиг тут:

<http auto-config="false" use-expressions="true" authentication-manager-ref="myAuthenticationManager" path-type="regex">
    <form-login authentication-success-handler-ref="myAuthenticationSuccessHandler" login-page="..." login-processing-url="..." authentication-failure-url="..." username-parameter="username" password-parameter="password" />

    <custom-filter ref="logoutFilter" position="LOGOUT_FILTER"/>
    <expression-handler ref="myWebSecurityExpressionHandler" />

    <custom-filter ref="myCustomeFilter1" before="FORM_LOGIN_FILTER"/>
    <custom-filter ref="myCustomeFilter2" position="BASIC_AUTH_FILTER"/>
    <custom-filter ref="mySecurityClientTokenAuthenticationFilter" after="LOGOUT_FILTER" />

    <access-denied-handler ref="myAccessDeniedHandler"/>
    <intercept-url pattern="xxx"
                   access="method()"/>

    <intercept-url pattern="yyy"
                   access="method()"/>
    <remember-me services-ref="rememberMeServices"  key="my_remember"/>
</http>

Я попытался добавить следующее, с единственным результатом, что пользователь не перенаправляется на исходную страницу.

<http ...
    <request-cache ref="nullRequestCache"/>
</http>
<bean:bean id="nullRequestCache" class="org.springframework.security.web.savedrequest.NullRequestCache"/>

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

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