A Struts application is really nothing more than a framework or utility for creating J2EE web applications. Once the application has been created, it is no different than any other J2EE web application, and can be used in a clustered environment no differently than any other J2EE web application. The information you read in any documents about J2EE applications in a clustered environment including advantages, disadvantages, tricks, and traps will apply without modification to Struts applications. [ September 01, 2006: Message edited by: Merrill Higginson ]
The strength of your cluster will depend upon the implementation of your server, not your Struts application.
Sometimes, when developing locally, people write info to file on the local system, which can get out of sync in a cluster, but that's not a Struts specific issue.
Certainly, Struts will not have a negative effect on HttpSession management or Servlet request failover. There are plenty of Struts applications running in clustered WebSphere environments, that I can assure you.