2013-09-27 67 views
0

我們的Spring MVC應用程序正在使用下面的表單登錄配置:登錄前保存目標網址?

<security:form-login login-page="/login" 
      authentication-failure-url="/login?failure=true" login-processing-url="/login/process" 
      username-parameter="email" password-parameter="password" 
      always-use-default-target="false" default-target-url="/welcome" /> 

當用戶訪問受保護的URL,這樣的設置使得他們將其重定向到URL之前登錄。但是,如果新用戶登錄到登錄頁面,他們會點擊一個鏈接來創建一個新帳戶,然後他們被重定向到歡迎頁面(如預期的那樣)。

創建新帳戶時如何保存原始目標網址,並在創建帳戶後將其重定向到該目標?

回答

0

我想你可以定義一個bean這樣的:

@Component 
@Scope("session") 
class sessionPath{ 
String path; 
//setter getter 
} 

,並保存在每個控制器的電流路徑; 使用它任何你想要的地方。
如果您不喜歡在每個控制器中編寫代碼,則可以使用Aop連接點自動保存用戶上次會話。 也添加觸發器來創建新的用戶控制器來調用會話並重定向她。

+0

但是,在重定向到登錄頁面之前,從不調用控制器。我們使用來限制訪問 – Satish