Fallback to local sessions without Redis bean

This commit is contained in:
2026-06-01 13:35:32 +09:00
parent 5b783fe817
commit ffce1ef370
@@ -43,7 +43,12 @@ public class OptionalSpringSessionFilter implements Filter {
chain.doFilter(request, response);
return;
}
getDelegate().doFilter(request, response, chain);
Filter current = getDelegate();
if (current == null) {
chain.doFilter(request, response);
return;
}
current.doFilter(request, response, chain);
}
@Override
@@ -60,6 +65,11 @@ public class OptionalSpringSessionFilter implements Filter {
current = this.delegate;
if (current == null) {
WebApplicationContext context = WebApplicationContextUtils.getRequiredWebApplicationContext(this.servletContext);
if (!context.containsBean(TARGET_BEAN_NAME)) {
this.enabled = false;
this.servletContext.log("Spring Session Redis filter bean was not found. Falling back to local servlet sessions.");
return null;
}
current = context.getBean(TARGET_BEAN_NAME, Filter.class);
this.delegate = current;
}