Apache Struts is a free open-source framework for creating Java web applications. The framework provides three key components: A "request" handler provided by the application developer that is mapped to a standard URI. A "response" handler that transfers control to another resource which completes the response. A tag library that helps developers create interactive form-based applications with server pages.