Coversations always create an HTTP session
Closed this issue · 0 comments
Celos commented
ConversationManagerImpl#activateConversation
is called for every Tapestry component and page render request. It contains the following lines:
conversationId = cookies.readCookieValue(pageName.toLowerCase() + Keys._conversationId);
Conversation conversation = getConversations().get(conversationId);
Meaning that regardless whether the cookie is set or not, getConversations
is called. That in turn calls request.getSession(true)
, meaning all requests, regardless if any conversation actually needs to be activated, create a session.
The same thing also happens later on in the method: endConversationIfIdle
doesn't check if its input is null.