HttpSessionSecurityContextRepository support null HttpServletResponse
Closes gh-11029
This commit is contained in:
parent
d4d6ddbaae
commit
8940719dbb
|
@ -123,10 +123,12 @@ public class HttpSessionSecurityContextRepository implements SecurityContextRepo
|
|||
this.logger.trace(LogMessage.format("Created %s", context));
|
||||
}
|
||||
}
|
||||
SaveToSessionResponseWrapper wrappedResponse = new SaveToSessionResponseWrapper(response, request,
|
||||
httpSession != null, context);
|
||||
requestResponseHolder.setResponse(wrappedResponse);
|
||||
requestResponseHolder.setRequest(new SaveToSessionRequestWrapper(request, wrappedResponse));
|
||||
if (response != null) {
|
||||
SaveToSessionResponseWrapper wrappedResponse = new SaveToSessionResponseWrapper(response, request,
|
||||
httpSession != null, context);
|
||||
requestResponseHolder.setResponse(wrappedResponse);
|
||||
requestResponseHolder.setRequest(new SaveToSessionRequestWrapper(request, wrappedResponse));
|
||||
}
|
||||
return context;
|
||||
}
|
||||
|
||||
|
|
|
@ -134,6 +134,14 @@ public class HttpSessionSecurityContextRepositoryTests {
|
|||
assertThat(request.getSession(false)).isNull();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void loadContextWhenNullResponse() {
|
||||
HttpSessionSecurityContextRepository repo = new HttpSessionSecurityContextRepository();
|
||||
MockHttpServletRequest request = new MockHttpServletRequest();
|
||||
HttpRequestResponseHolder holder = new HttpRequestResponseHolder(request, null);
|
||||
assertThat(repo.loadContext(holder)).isEqualTo(SecurityContextHolder.createEmptyContext());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void existingContextIsSuccessFullyLoadedFromSessionAndSavedBack() {
|
||||
HttpSessionSecurityContextRepository repo = new HttpSessionSecurityContextRepository();
|
||||
|
|
Loading…
Reference in New Issue