我在使用运行带有 mysql 的 tomcat 服务器的 Realm 创建登录名时遇到了一些麻烦。 我已经创建了 web.xml、context.xml,它与受限页面的 j_security_form 一起使用。
我的问题是我不知道如何制作一个已经有登录表单的页面并重定向到同一页面。唯一不同的是显示用户已登录并且菜单发生变化。 但是我该怎么做,因为 action=j_security_form 没有指向特定页面(索引页面),这就是我想要的。这是怎么做到的?我试着用谷歌搜索它。但是他们中必须写关于玻璃鱼的文章并且找不到我。
只需要一个“简单的”登录重定向到同一页面,用户名在 session 中或类似的东西。 我卡住了:/
最佳答案
您可能需要重新阅读第 13.6.3 节(在 3.0 规范中),其中概述了所有这些东西是如何工作的:
- 用户请求 protected 页面
- 容器呈现登录页面
- 用户提交凭据
- 身份验证成功后,用户将转到步骤#1 中请求的页面
如果您想要允许“路过式”登录——也就是说,跳过第 1 步——您必须自己完成所有操作。如果您使用的是 3.0 规范的网络应用程序,那么您可以编写自己的 servlet 来处理登录尝试:使用新的 HttpServletRequest.login
方法访问 Realm
的身份验证功能并根据需要执行您自己的重定向。
如果您没有使用 3.0 规范的网络应用程序,那么您必须自己编写所有内容或使用类似 security filter 的东西.
关于Java、Realm、Tomcat、登录。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13291464/