Right now, I'm converting my session-based forms to request-based forms because I'm trying to minimize my use of the session object.
The reason is that I found out that when my container runs in clustered mode, it serializes the attributes of the session object and broadcasts the updates across the network to one or two machines with backup sessions anytime the setAttribute() and removeAttribute() methods are invoked. Therefore, there seems to be a lot more overhead in a cluster than standalone in terms of session serialization due to additional network I/O and deserialization on the backup session servers. Would anyone care to share their wisdom on the subject of request vs. session scope for forms in a clustered environment? Am I right that session-based forms should be avoided unless required by performance or business logic concerns? Any thoughts would be helpful.

