为什么我会得到:
java.lang.NullPointerException org.owasp.csrfguard.CsrfGuardFilter.doFilter(CsrfGuardFilter.java:53)
尝试在 Tomcat 5.5 上运行0wasp.CsrfGuard.Test示例应用程序时?
我使用的示例应用程序与下载时完全一样,但进行了以下更改以规避listener
错误:
我下载了 CsrfGuard 3.0.0 包并将其复制
Owasp.CsrfGuard.jar
到WEB-INF/lib
以绕过未找到的侦听器。我更改了 web.xml 文件以使用附带的侦听器,
Owasp.CsrfGuard.jar
而不是原始web.xml
中不存在的两个侦听器。
当我启动应用程序时没有错误,但是当我将浏览器指向该/Owasp.CsrfGuard.Test/index.html
页面时,出现上述错误。
有什么想法可以尝试吗?
更新...
几个小时后,我让它正常工作。我不明白为什么,但即使在停止并重新启动 web 应用程序(至少在 Tomcat 中)之后,过滤器错误似乎仍然存在。我不得不重命名该 webapp 的目录,等待 10 秒钟让 Tomcat 自动取消部署它,将它重命名回原来的目录名称,然后等待 10 秒钟让 Tomcat 将其识别为新的 webapp。我还从 web.xml 文件中删除了“x-requested-with”init-param,因为我不使用 AJAX。不知道这是否真的需要出来,但它有效,所以我把它排除在外。
现在,“protect.html”文件确实受到了保护,但它被保护得太好了。我根本无法理解。如果我尝试直接进入protect.html 页面,它不应该允许这样做,它不允许。但是,它应该允许我通过正确的网页流程到达那里,所有页面都获得正确的令牌。
现在的问题是如何访问protect.html 页面?
谢谢。