WebWork 2 is now Apache Struts 2

By Rajan Viewed: 31728 times Emailed: 293 times Printed: 242 times Bookmark and Share



Apache Struts 2 was originally knows as WebWork 2. WebWork was functioning independantly for many years until recently both Struts and Webwork communities joined hands to create Struts2.

To download the framework, visit Apache Struts Distributions

Apache Struts 2 Architecture:

1. The web browser requests a resource (/mypage.action, /reports/myreport.pdf, et cetera) 
2. The Filter Dispatcher looks at the request and determines the appropriate Action 
3. The Interceptors automatically apply common functionality to the request, like workflow, validation, and file upload handling 
4. The Action method executes, usually storing and/or retrieving information from a database 
5. The Result renders the output to the browser, be it HTML, images, PDF, or something else 

Struts 2 Configuration:

A web application uses a deployment descriptor to initialize resources like filters and listeners. The web deployment descriptor is formatted as a XML document and named web.xml. Struts can either initializes its resources by scanning your classes using Java packages declared in this web.xml file, or you can have full control over the configuration via a configuration file, named struts.xml. These resources include action mappings, to direct input to server-side Action classes, and result types, to select output pages. 

Here's a typical configuration (struts.xml) for a login workflow:

<struts>
<package name="default" extends="struts-default">

<action name="Logon" class="mailreader2.Logon">
<result name="input">/pages/Logon.jsp</result>
<result name="cancel" type="redirect-action">Welcome</result>
<result type="redirect-action">MainMenu</result>
<result name="expired" type="chain">ChangePassword</result>
</action>

<action name="Logoff" class="mailreader2.Logoff">
<result type="redirect-action">Welcome</result>
</action>

</package>
</struts>
The framework provides general-purpose defaults, so we can start using Struts right away, "out of the box". Any factory defaults can be overridden in an application's configuration, as needed.

Apache Struts 2 requires:

  • Servlet API 2.4
  • JSP API 2.0
  • Java 5
An alternate set of JARs for Java 4 are also available. See the "J4" distribution. For a full list of requirements, including dependencies used by optional plugins, see Project Dependencies


Comments(0)


Be the first one to add a comment

Your name (required):


Your email(required, will not be shown to the public):


Your sites URL (optional):


Your comments:


Enter Code:
The Captcha image

Latest Tutorials

[2008-12-10]Configuring JDBC DataSources in Struts
[2008-12-09]Struts Classes
[2008-09-20]FAQ: Why was reload removed from Struts (since 1.1)?
[2008-09-20]FAQ: Why are my checkboxes not being set from ON to OFF?
[2008-09-20]Using JavaScript to submit a form in Struts
[2008-09-20]How to prepopulate a form in Struts
[2008-09-20]Simple example of using the requiredif Validator rule in Struts
[2008-09-20]Chaining actions in Struts
[2008-09-20]When is the best time to validate input in Struts
[2008-09-17]What is a Plug-in and how to use Java plug-ins with Struts?
[2008-08-13]7 Best Practices of Struts
[2007-10-12]Origin and Architecture of Struts
[2007-10-01]ActionErrors and ActionError in Struts
[2007-10-01]Tutorial on Struts Configuration File – struts-config.xml in Struts
[2007-10-01]Handling multiple buttons in HTML Form in Struts

More Latest News

Most Viewed Articles (in last 30 days)
Tutorial on Struts Configuration File – struts-config.xml in Struts
Struts 1 vs Struts 2
Creating the first application using Struts 2
Handling Duplicate Form Submissions in Struts
Handling multiple buttons in HTML Form in Struts
ActionErrors and ActionError in Struts
Editing struts-config.xml in a Struts Application
Configuring JDBC DataSources in Struts
DispatchAction in Struts
Using JavaScript to submit a form in Struts
Using Checkbox & Radio Tags, html:select, html:options in Struts Forms
What is Struts? Which Version of Struts to use?
Editing web.xml in a Struts Application
ForwardAction in Struts
MVC Architecture (Model 2 Architecture)
Most Emailed Articles (in last 30 days)
Struts 1 vs Struts 2
What is Struts? Which Version of Struts to use?
Tutorial on Struts Configuration File – struts-config.xml in Struts
History of Struts
What is a Model View Controller (MVC) Model?
WebWork 2 is now Apache Struts 2
Writing the first Struts application
Creating the first application using Struts 2
Is Struts the most popular web application framework for Java?
Downloading and installing Struts
Editing web.xml in a Struts Application
Editing struts-config.xml in a Struts Application
Handling multiple buttons in HTML Form in Struts
DispatchAction in Struts
Using Checkbox & Radio Tags, html:select, html:options in Struts Forms