Fallback to local sessions without Redis bean
This commit is contained in:
@@ -43,7 +43,12 @@ public class OptionalSpringSessionFilter implements Filter {
|
|||||||
chain.doFilter(request, response);
|
chain.doFilter(request, response);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
getDelegate().doFilter(request, response, chain);
|
Filter current = getDelegate();
|
||||||
|
if (current == null) {
|
||||||
|
chain.doFilter(request, response);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
current.doFilter(request, response, chain);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -60,6 +65,11 @@ public class OptionalSpringSessionFilter implements Filter {
|
|||||||
current = this.delegate;
|
current = this.delegate;
|
||||||
if (current == null) {
|
if (current == null) {
|
||||||
WebApplicationContext context = WebApplicationContextUtils.getRequiredWebApplicationContext(this.servletContext);
|
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);
|
current = context.getBean(TARGET_BEAN_NAME, Filter.class);
|
||||||
this.delegate = current;
|
this.delegate = current;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user