One of the great advantages to using a framework is the many helpful components in the View layer
of the application. For Struts, this is:
- i18n messages - using a property file, you can specify all the internationalized messages
for your application, allowing you to support multiple languages and locales. Struts
helps you by allowing you to look up messages by a key, and inserting the messages into
your code through tag libraries
- Struts provides a host of tag libraries that make creating dynamic JSPs much easier. These
tags are grouped into several categories: logic (iteration, checking for and creating beans
in a given scope), html (form and link creation), and bean (manipulating Java beans). These
tags integrate tightly with the rest of the framework, but some tags can be replaced by JSTL
tags if desired. There is an EL enabled version of the tags available.
-
Struts provides a validation framework that is XML file driven. This allows the controller to
run validation (on the server side) before the form is submitted to the model. If validation
fails, the errors can be sent back to the user and presented to them for proper handling.
-
Struts includes a templating framework called Tiles which allows for pages to be quickly
assembled from templates, making global site changes much easier.
-
Struts works with other presentation types (JavaServerFaces, Velocity), but if JSP is used, any
of the JSP functionality is available.


