带参数的web.xml登录页面?

时间:2011-04-21 13:40:51

标签: java security

我有一个jsf Web应用程序,在我的web.xml中我有这个配置:

<login-config>
  <auth-method>FORM</auth-method>
  <form-login-config>
   <form-login-page>/mainLoginPage.jsp</form-login-page>
   <form-error-page>/mainLoginPage.jsp?error=true</form-error-page>
  </form-login-config>
</login-config>

嗯,一切都适用于网址:

http://localhost:8080/mainLoginPage.jsp

但我想也有可能为这个mainLoginPage追加url参数,例如:

http://localhost:8080/mainLoginPage.jsp?co=google

因此,基于公司用户, mainLoginPage将为不同的公司执行重定向到不同的登录页面

如果我尝试上面的参数化网址,它将无效,因为它“认为”我请求另一个页面并且未登录它会将我重定向到默认的login.jsp。

问题有没有办法在web.xml中指定它应该让我为这个mainLoginPage添加params而不是像我为错误做的那样在web xml中对它们进行硬编码网页?

感谢。

1 个答案:

答案 0 :(得分:1)

我不确定web.xml错误页面定义中的参数。但是你可以创建一个简约的JSP页面,它将你转发到带有参数的那个页面,如下所示:

<!-- in, say, errorLoginPage.jsp -->
<jsp:forward page="/mainLoginPage.jsp?error=true" /></jsp:forward>