@Override
public void doFilter(final ServletRequest request,
final ServletResponse response, final FilterChain chain)
throws IOException, ServletException {
RequestContext old = local.setContext(requestContext.get());
try {
try {
chain.doFilter(request, response);
} finally {
cleanup.get().run();