One of the really cool features of Orchestra is the possibility to create conversations. This feature can help us to solve a common problem in JSF applications—the lack of a scope that lasts exactly as long as we want it to. The request scope is only usable for very short-living data. Things that should last longer than a single request are usually put into the session scope. But the session scope stays in memory for as long as the user is logged in. That’s generally too long, which means that we have to manually remove objects that we don’t need anymore. Failing to remove those objects leads to too much memory usage and can also have undesired side effects.
Orchestra introduces the concept of conversations. A conversation is a page or a series of pages in which data can be manipulated by the user. The manipulated data will be persisted at the end of the conversation. During the conversation, we have a conversation scope that we can use to store temporary...