我试图编写一个侦听器,在会话超时之前从用户那里获取当前 URL。我需要将此网址存储在数据库中。
public class SessionTimeoutListener implements HttpSessionListener,SessionAware {
HttpServletRequest request;
@Override
public void sessionDestroyed(HttpSessionEvent event) {
String url = request.getRequestURL().toString();
// url is empty here!!
}
@Override
public void sessionCreated(HttpSessionEvent arg0) {
}
@Override
public void setSession(Map<String, Object> arg0) {
session=arg0;
}
}
我是 struts2 和 java 编程的新手......我不明白为什么我在那一行得到一个空值。我是否必须将 url 设置在某个地方才能让我得到它,如图所示?还是听众本身不正确?