Struts is a set of cooperating classes, servlets, and JSP tags that make up a reusable MVC 2 design.
? JavaBeans components for managing application state and behavior.
? Event-driven development (by listeners as in traditional GUI development).
? Pages that shows MVC-style views; pages reference view roots by the JSF component tree.