【发布时间】:2014-01-07 20:36:06
【问题描述】:
我正在使用 jsf2 和 RichFaces。我想跟踪用户浏览的每个页面。
为此,我创建了拦截所请求页面的 Servelet 过滤器。在我的项目中,我使用的是固定页眉和页脚的 jsf 模板功能。在正文部分,我定义了 menu.xhtml 和 iframe 标记。每当用户单击菜单上的任何链接时,响应都会针对 iframe。
我的问题是,我没有得到过滤器中请求的页面的正确 url。
我的过滤器快照
下面显示的是过滤器,正在寻找 xhtml 页面。
chain.doFilter(request, response);
HttpSession session = req.getSession(false);
if( null != session && (uri.contains(".xhtml") || null != session.getAttribute("userid"))){
if(null != session.getAttribute("userid")){
String userid = session.getAttribute("userid").toString();
//for saving usage details
if(uri.contains(".xhtml")){
System.out.println(".......Requeted Page.........."+req.getRequestURL().toString());
saveUserUsage(req);
}
}
}
进入过滤器的url是userdeskop.xhtml,即使选择了菜单中的不同链接。
【问题讨论】:
-
您是否检查过,即通过 Firebug,单击浏览器中的链接后是否请求/检索了预期的 .xhtml/.jsf 页面?我猜,与您点击的内容无关,您的浏览器请求的页面总是相同的。
-
我在模板中使用了 iframe。
-
嗯,iFrame-Request 在您请求/单击按钮后仍应由 FireBug 显示。
标签: jsf servlets jsf-2 richfaces servlet-filters