Hi,
the following fix seems to fix the bug:
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.eclipse.jetty.server.Request;
import org.eclipse.jetty.server.session.SessionHandler;
public class MySessionHandler extends SessionHandler {
@Override
public void doScope(String target, Request baseRequest,
HttpServletRequest request, HttpServletResponse response) throws
IOException, ServletException {
HttpSession oldSession = request.getSession(false);
super.doScope(target, baseRequest, request, response);
HttpSession newSession = request.getSession(false);
if (newSession != null && oldSession != newSession) {
getSessionManager().complete(newSession);
}
}
}
<Set name="sessionHandler">
<New class="com.playtech.chatweb.MySessionHandler">
</New>
</Set>
On Tue, Apr 24, 2012 at 5:46 PM, Michael Elman <[email protected]> wrote:
> Hi,
>
> n the application, we use to switch sessions once the user mode is
> changed.
>
> So basically we have something like this:
>
> request.getSession(false).invalidate();
>
> request.getSession(true);
>
> Now happens the problem: after timeout, the session is not removed. After
> debugging some internal code, I found out that in
> org.eclipse.jetty.server.session.AbstractSession.timeout() the session is
> not removed if _requests > 0. And the _requests is greater then zero,
> since in org.eclipse.jetty.server.session.SessionHandler.doScope(String,
> Request, HttpServletRequest, HttpServletResponse) the complete() runs on
> the access session is increased and the same session is decreased, even
> if during the invocation the actual session was replaced!
>
> Did anyone experience the same problem and managed to solve it?
>
>
> Thanks,
>
> Michael
>
> P.S. This question was also posted at Stackverflow at
> http://stackoverflow.com/q/10300283/547779
>
_______________________________________________
jetty-users mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/jetty-users