2011-07-26 83 views
1

我希望你能幫助我,因爲我試圖在互聯網上找到答案,但我沒有找到任何有關這方面的信息。ISA Server 2006 Java HttpSession問題

問題:我有一個公共環境中運行良好的公共Java Web應用程序(第一頁是登錄,然後是系統選項)。我有一個ISA Server 2006作爲他的企業的代理的客戶端,並且那個地方的人會出現一些錯誤,例如同時登錄到系統中的其他用戶的顯示信息。我認爲錯誤在於ISA正在緩存會話cookie,並且當某個用戶發出請求時,ISA將共享該cookie向我的服務器發送帶有錯誤sessionId的請求。

有人對此問題有任何想法或知道如何解決它(我沒有訪問ISA以避免緩存我的應用程序)?

謝謝!

回答

0

我從來沒有聽說過代理緩存會話cookie的問題。這並不是說它不可能發生,但我會首先看到家。你所描述的是非線程安全代碼的預期結果。在您的代碼庫中查找併發問題。另一種可能性是網頁緩存。如果數據請求都轉到相同的URL並且您沒有適當地控制緩存,則可以想象,Web緩存可能會緩存來自一個用戶請求的數據並將其顯示給其他用戶。

+0

我使用Spring 3的網絡使用MultiActionControllers,這樣我不知道如果 我有非線程安全的問題,但我不認爲。我把指令放在 以下,但這不適用於代理。你知道另一種做好緩存管理的方法嗎? – zerovirus

+0

這是指令'<% response.setHeader(「Cache-Control」,「no-store」); // HTTP 1.1 response.setHeader(「Pragma」,「no-cache」); // HTTP 1.0 response.setDateHeader(「Expires」,-1);內容=「0」> ' – zerovirus