, SecurityManager ThreadLocal ShiroFilter. doFilterInternal. Subject ThreadContext subject.execute, , SecurityUtils.getSubject() null , subject.execute, ShiroFilter, , , .
AbstractShiroFilter.java
protected void doFilterInternal(ServletRequest servletRequest, ServletResponse servletResponse, final FilterChain chain)
throws ServletException, IOException {
...
final Subject subject = createSubject(request, response);
subject.execute(new Callable() {
public Object call() throws Exception {
updateSessionLastAccessTime(request, response);
executeChain(request, response, chain);
return null;
}
});
...
}
, , inject Stateless B, DI? Guice Spring.