Struts is an open-source Java framework for building web applications. It uses existing technologies like servlets, JSP en AJAX.
Struts encourages separation of concerns using the MVC design pattern. It achieves this through actions. Struts gets competition from Spring MVC (added to Spring because of Struts' perceived shortcomings) and Java Server Faces (added by Sun to Java Enterprise Edition 5).
Examining this technology I came across the new Filters mechanism (not Struts-specific), which really appeals to me, because it mimics the UNIX pipes. It gives you a fine-grained, flexible way of re-combining existing functions, like logging, authenticating, and localization. This extension to the Servlet technology seems like a Good Thing to me.