2012-11-08 54 views
0

我們在獨立部署(跨上下文)中使用Orbeon 3.9,應用程序安全性與OpenSSO,服務器是glassfish。Orbeon,OpenSSO和會話到期

注:Orbeon意見書(backrequests)與只從本地主機,而不是在OpenSSO的CONTEX訪問其他Web應用程序進行處理。

會話超時到期(在瀏覽器中打開左側的形式足夠長的時間超時)後是Orbeon停留在「正在加載...」循環右後先「點擊」。

如螢火蟲說:

1)Orbeon AJAX POST-請求/應用上下文/ orbeon/XForms的服務器

2)的OpenSSO停止與302該請求暫時移動

3) Ajax是GET-請求/ OpenSSO的/ cdcservlet?...

4)返回200,大概登錄頁面內容

5)響應忽視d,轉到1)

無盡。

我已經試過這樣:http://wiki.orbeon.com/forms/how-to/other/redirect-users-error

但沒有幫助,因爲沒有顯示對話框。

我們需要將瀏覽器重定向到該登錄頁面。

有什麼建議嗎?

回答

0

編寫了代碼,如果你想Orbeon窗體客戶端代碼從服務器的錯誤認識答案的方式,服務器也需要有在HTTP響應文件看起來像的身體:

<error> 
    <title>...</title> 
    <body>...</body> 
</error> 

如果這樣的文件不存在,那麼客戶端代碼將重試延遲之後的請求,並表示,在此期間「載入中...」。因此,就您的情況而言,如果請求是從Ajax請求重定向的,您將需要找到一種方法讓登錄頁面回覆該文檔。

現在,我也認爲Orbeon形式應該在這方面加以改進,並應考慮一個302回答一個Ajax請求的錯誤,無論是默認或允許您配置此行爲。出於這個原因,我打開issue #560