Hi, I see that currently Orchestra has a feature that allows conversation contexts to be timed out (deleted) automatically.
I'm a little curious about why this feature is needed. When a user's session times out the conversation data is discarded anyway. When is it useful to have a conversation timeout shorter than the http session timeout? Also, the implementation spawns a thread to periodically monitor conversations for timeout. The j2ee spec is pretty threatening about code spawning threads. In practice I've not had problems with this but nevertheless it makes me a little nervous. Would it be possible to instead check for conversation timeouts from a PhaseListener? Yes this means that if the webapp is totally unused then the timeouts will not get checked. However I don't think that's really an issue in practice. It does also mean that once in a while a user's page will be delayed a little while all the timeouts are checked as part of that request (rather than as a background thread) but the amount of work to be done is really rather small... Regards, Simon
