2013-02-04 49 views
0

我們有一個jsf應用程序,帶有一個正常的登錄站點。現在我們必須將這個應用程序與另一個應用程序集成,我的問題是在兩個應用程序之間傳遞參數。假設一個客戶端在一個應用程序中有一個ID,我必須從第二個應用程序加載登錄頁面,我認爲從第一個應用程序通知第二個應用程序最簡單的方法是使用參數加載登錄頁面,該參數是來自第一個應用程序的客戶端ID。一個登錄站點,帶參數

的另一種方式,我的第二個應用程序必須的功能獨立,所以我需要兩個登錄頁面,一個不帶參數,一個帶參數。這甚至可以這樣做,或者有另一種方式來做到這一點。

回答

0

第二應用程序可以有單個的登錄頁面用兩種不同的形式。

您可以通過從1日申請的一些ID作爲會話屬性的一部分,並獲得第二應用的登錄頁面,會話屬性。在這裏,您可以檢查是否獲得會話屬性(爲空或不),並根據情況呈現相關表單。相反,如果直接點擊第二個應用程序的登錄頁面,則該會話屬性將不存在,並且可以根據需要渲染其他表單。

0

您不能共享兩個不同的應用程序之間的會話。您將策略從第一個應用程序傳遞到第二個應用程序似乎對我來說是正確的

如果你想分享的登錄,然後其他的方式可能是添加的登錄細節在加密的cookie在第一個應用程序,當你重定向到其它應用程序中的第二個應用程序可以基於加密的cookie驗證登錄。

兩個應用程序應該在同一個域中運行,以接受Cookie(如.xyz.com)

這是如何大多數SSO(單點登錄)的應用程序通過使用LTPA令牌作爲cookie共享會話。

+0

這是可能的,如果他們在同一臺服務器和域上運行共享會話。 – BalusC

+0

我們可以在兩個Web應用程序之間共享會話嗎?我的理解是,一些appservers通過序列化和反序列化羣集之間的會話來提供此功能,但只適用於部署在幾個羣集上的同一應用程序。 –

+0

如上所述,如果它們在同一臺服務器和域上運行,則可以共享會話。 – BalusC