What is Struts? Which Version of Struts to use?

By Vilyams Viewed: 31793 times Emailed: 326 times Printed: 357 times Bookmark and Share



What is Struts?

Apache Struts is a free open-source framework for creating Java web applications.

Web applications differ from conventional websites in that web applications can create a dynamic response. Many websites deliver only static pages. A web application can interact with databases and business logic engines to customize a response.

Web applications based on JavaServer Pages sometimes commingle database code, page design code, and control flow code. In practice, we find that unless these concerns are separated, larger applications become difficult to maintain.

One way to separate concerns in a software application is to use a Model-View-Controller (MVC) architecture. The Model represents the business or database code, the View represents the page design code, and the Controller represents the navigational code. The Struts framework is designed to help developers create web applications that utilize a MVC architecture.

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.
The framework's architecture and tags are buzzword compliant. Struts works well with conventional REST applications and with nouveau technologies like SOAP and AJAX.

Which version of Struts to use?

A beta release of Struts 2 is now available, and a stable release is anticipated by the end of the year. In the meantime, the prudent course would be to start new projects with WebWork 2.2, at least until there is a stable release of Struts 2.0.

WebWork 2 is going to be supported for some time to come, just as Struts 1 will be supported. Both products have a robust user community, and many of us have mature projects in production that will never be migrated to a new major release.

Is Struts 1 obsolete?

No.

There is a robust and vibrant community of developers using Struts 1 in production, and we expect that thousands of teams will continue to base new projects on Struts 1, and continue to support existing projects, for many, many years to come.

New and improved extensions for Struts 1 continue to appear regularly. In 2006 alone, we've seen releases of Hoople, Strecks, JSP Control Tags, Sprout, Spring Web Flow, DWR, Calyxo, FormDef, and Java Web Parts. There are dozens of books and hundreds of articles available to help people get started with Struts 1 or improve the application they already have.

Since the merger, Struts 1 has gone on to release a new minor version, Struts 1.3, and new 1.x releases are being planned. Struts 1 continues to be the most popular and best supported web application framework for Java.

Of course, if you are starting a new project, and have your choice of frameworks, this might be a good time to consider whether you would like to continue to use Struts 1 or whether it's time to try Struts 2.

 




Comments(4)


1. i want some explanation about struts form field validation.

By: ramizah at 2007-10-03 23:40:11
2. i Want Struts Full Details with
Word format file
please send if you hava

By: Kannan.R at 2007-10-04 00:40:27
3. Could you please explain how to define our own validators in validator-rules.xml file please explain..Advance thanks

By: xxxxx at 2010-06-30 06:41:14
4. Hi,
tell me What is struts chaining with example.

By: Mekala venkateswara at 2010-07-03 09:39:59

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