What is Struts? Which Version of Struts to use?

By: Vilyams  

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?


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.


Archived Comments

1. i want some brief realtime examples
View Tutorial          By: SURYA.C at 2015-08-20 05:06:18

2. i want some brief realtime examples
View Tutorial          By: SURYA.C at 2015-08-20 05:05:50

3. how run struts in eclipse can explain with an example program .
how does struts work in ecli

View Tutorial          By: Grace at 2015-08-14 02:41:28

4. can any beginners can try creating web pages
can v use it as like a application to learn??
View Tutorial          By: jo at 2015-07-28 19:35:11

5. Thank you for providing helpful information.
View Tutorial          By: the frameworks at 2014-09-01 12:16:04

6. how does struts work in netbeans 6.9.1?what are the coding used for insert,update,select and delete
View Tutorial          By: gunavathi at 2014-05-14 08:00:56

7. its not sufficient add more details..
View Tutorial          By: vikas at 2013-04-12 12:06:01

8. i want struts flow
View Tutorial          By: suresh at 2013-03-28 10:28:53

9. I need Structs full notes with examples
View Tutorial          By: Thomas at 2012-10-24 11:18:11

10. Hi,i want to know the basics of struts framework
View Tutorial          By: ankit srivastava at 2011-09-12 07:11:15

11. Hi,
tell me What is struts chaining with example.

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

12. Could you please explain how to define our own validators in validator-rules.xml file please explain
View Tutorial          By: xxxxx at 2010-06-30 06:42:46

13. Could you please explain how to define our own validators in validator-rules.xml file please explain
View Tutorial          By: xxxxx at 2010-06-30 06:41:14

14. i Want Struts Full Details with
Word format file
please send if you hava

View Tutorial          By: Kannan.R at 2007-10-04 00:40:27

15. i want some explanation about struts form field validation.
View Tutorial          By: ramizah at 2007-10-03 23:40:11

Most Viewed Articles (in Struts )

Latest Articles (in Struts)

Comment on this tutorial