替換在應用方面,我們採用一旦用戶模式更改爲切換會話。碼頭不會刪除超時會議,如果會議在運行時
所以基本上,我們有這樣的事情:
request.getSession(false).invalidate();
request.getSession(true);
現在發生的問題:超時後,會話不會被刪除。調試一些內部代碼後,我發現,在org.eclipse.jetty.server.session.AbstractSession.timeout()
會話沒有當_requests > 0
刪除。而_requests
是大於零,因爲在org.eclipse.jetty.server.session.SessionHandler.doScope(String, Request, HttpServletRequest, HttpServletResponse)
上access
會議complete()
運行增加,同一個會話下降,即使調用過程中的實際會話被換下!
有沒有人遇到同樣的問題,並設法解決它?
更新:我創建了一個解決方法。見下面的接受答案。
更新:錯誤澤西社區:https://bugs.eclipse.org/bugs/show_bug.cgi?id=377610
哪個會話管理器你在這裏工作嗎?哈希,jdbc,mongodb,其他? – 2012-04-24 16:18:13
@jessemcconnell哈希 – Tarlog 2012-04-24 16:42:47