2010-01-28 55 views
0

我的应用程序在jsp和servlets中使用stardard MVC模式。当用户点击会话过期后的链接时,我喜欢重定向到登录页面。相同的应用程序用于许多国家,所以我给国家代码与登录网址。所以简单的重定向到登录页面是不可能的。我如何重定向到我的Web应用程序根目录?它看起来像这样... www.mysite.com/LoginServlet?country='EUF'redict在会话过期后登录

请帮忙。

谢谢...

回答

0

你可以使用一个Servlet过滤器,将重定向到用户。如果会话过期,则过滤器将用户重定向到登录页面。

+0

但我需要登录页面的登录页面参数,你会添加类似的东西。从哪里我会得到那个? – coder247 2010-05-05 07:18:36

+0

过滤器可以重定向到一个任意的URL,所以你可以添加你想要的任何参数。 – deamon 2010-05-05 08:44:30

1

假设基于表单的身份验证到您的web.xml 这需要用户进行身份验证的任何其他页面之前访问

<security-constraint> 
    <web-resource-collection> 
     <web-resource-name>Secured</web-resource-name> 
     <url-pattern>*.jsp</url-pattern> 
    </web-resource-collection> 
    <auth-constraint> 
     <role-name>admin</role-name>    
    </auth-constraint> 
</security-constraint> 

<security-role> 
    <role-name>admin</role-name> 
</security-role> 

<login-config> 
    <auth-method>FORM</auth-method> 
    <realm-name>Form-Based Authentication</realm-name> 
    <form-login-config> 
     <form-login-page>/Login.jsp</form-login-page> 
     <form-error-page>/Login.jsp</form-error-page> 
    </form-login-config> 
</login-config>