使用javaagent访问HTTPSession

时间:2015-08-21 08:39:49

标签: java servlets agent httpsession javassist

有没有办法在使用javassist编写的javaagent检测被调用的方法时访问会话属性?

我尝试使用spring web在代理中执行以下代码:

ServletRequestAttributes attr = (ServletRequestAttributes) RequestContextHolder.currentRequestAttributes();
HttpSession session =  attr.getRequest().getSession();

但是我收到以下错误:

  

引起者:java.lang.IllegalStateException:没有线程绑定请求   发现:您是指实际的请求属性吗?   Web请求,或处理原始请求之外的请求   接收线程?如果您实际在Web请求中操作   并且仍然收到此消息,您的代码可能正在外面运行   DispatcherServlet / DispatcherPortlet:在这种情况下,请使用   RequestContextListener或RequestContextFilter公开当前   请求

0 个答案:

没有答案