It is a set of classes aiming to improve Spring Web Flow’s behavior for Optimized Session Replication.
Conversation Manager manages conversations and effectively controls how state is stored physically when a flow execution is paused. SWF provides a default ConversationManager implementation: the SessionBindingConversationManager, which simply manages conversational state in the HttpSession storing all of the webflow conversations in the same attribute. For application servers who do session replication on changes in and per attribute of the session map, like Jboss AS, this cause that all of the conversations’s data get replicated even though just one conversation is altered.
This solution provides an option for Conversation Manager to stores each conversation in it’s own slot in the session map, thereby limiting replication to the conversation that are executed: ReplicationOptimizedSessionBindingConversationManager. It supports the same configuration facilities that SessionBindingConversationManager,
And it also allows to set a custom id generator strategy for generating ids for uniquely identifying the conversations managed through property conversationIdGenerator (see Extended usages).