I have a situation where after entering a username and password on the login
screen the user is brought back again to the login screen. I've traced the
issue to the following classes/methods.
org.springframework.webflow.execution.repository.support.AbstractFlowExecutionRepository
protected Conversation getConversation(FlowExecutionKey key) throws
NoSuchFlowExecutionException {
try {
return getConversation(((CompositeFlowExecutionKey)
key).getExecutionId());
} catch (NoSuchConversationException e) {
throw new NoSuchFlowExecutionException(key, e);
}
}
org.springframework.webflow.conversation.impl.SessionBindingConversationManager
private ConversationContainer getConversationContainer() {
SharedAttributeMap sessionMap =
ExternalContextHolder.getExternalContext().getSessionMap();
synchronized (sessionMap.getMutex()) {
ConversationContainer container =
(ConversationContainer) sessionMap.get(sessionKey);
if (container == null) {
container = createConversationContainer();
sessionMap.put(sessionKey, container);
}
return container;
}
}
The sessionMap (from call to
ExternalContextHolder.getExternalContext().getSessionMap()) intermittently
returns null which results in a "NoSuchConversationException" exception.
The end result is that the user is returned back to the login screen without
any errors. This is the expected behavior according to the CAS code if the
sessionMap is null. But why is it null only intermittently. The time I hit
submit is only seconds after I bring up the login screen and enters the
username/password. There's definitely not enough time for the session to
timeout.
Has anybody else seen this issue or have any insights that would shed some
light on what's going on?
Jonathan
--
You are currently subscribed to [email protected] as:
[email protected]
To unsubscribe, change settings or access archives, see
http://www.ja-sig.org/wiki/display/JSG/cas-user