Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

Apache Struts 1

From Wikipedia, the free encyclopedia
Open-source web application framework
For the successor of Apache Struts 1, seeApache Struts.
This article includes a list ofgeneral references, butit lacks sufficient correspondinginline citations. Please help toimprove this article byintroducing more precise citations.(April 2009) (Learn how and when to remove this message)
Apache Struts
Apache Struts Logo
Original authorCraig McClanahan
DeveloperApache Software Foundation
Initial releaseMay 2000; 25 years ago (2000-05)
Final release
1.3.10 / December 8, 2008; 17 years ago (2008-12-08)
Written inJava
Operating systemCross-platform
PlatformCross-platform (JVM)
SuccessorApache Struts 2
LicenseApache License 2.0
Websiteweblegacy.github.io/struts1/Edit this at Wikidata
Repository

Apache Struts 1 is anopen-sourceweb application framework for developingJava EEweb applications. It uses and extends theJava ServletAPI to encourage developers to adopt amodel–view–controller (MVC) architecture. It was originally created byCraig McClanahan and donated to theApache Foundation in May 2000. Formerly located under the ApacheJakarta Project and known asJakarta Struts, it became a top-level Apache project in 2005.

The WebWork framework spun off from Apache Struts aiming to offer enhancements and refinements while retaining the same general architecture of the original Struts framework. However, it was announced in December 2005 that Struts would re-merge with WebWork. WebWork 2.2 has been adopted asApache Struts 2, which reached its first full release in February 2007.

In addition to the current and constantly evolving successor version Struts 2, aclone of Struts 1 exists since 2022, which updates the legacy framework of Struts 1 to a currentJakarta EE compatible stack.[1]

Design goals and overview

[edit]

In a standardJava EE web application, the client will typically call to the server via aweb form. The information is then either handed over to aJava Servlet which interacts with a database and produces anHTML-formatted response, or it is given to aJavaServer Pages (JSP) document that intermingles HTML and Java code to achieve the same result.Both approaches are often considered inadequate for large projects because they mix application logic with presentation and make maintenance difficult.

The goal of Struts is to separate themodel (application logic that interacts with a database) from theview (HTML pages presented to the client) and thecontroller (instance that passes information between view and model). Struts provides the controller (a servlet known asActionServlet) and facilitates the writing of templates for the view or presentation layer (typically in JSP, butXML/XSLT andVelocity are also supported). The web application programmer is responsible for writing the model code, and for creating a central configuration filestruts-config.xml that binds together model, view, and controller.

Requests from the client are sent to the controller in the form of "Actions" defined in the configuration file; if the controller receives such a request it calls the corresponding Action class that interacts with the application-specific model code. The model code returns an "ActionForward", a string telling the controller what output page to send to the client. Information is passed between model and view in the form of specialJavaBeans. A powerful custom tag library allows it from the presentation layer to read and write the content of these beans without the need for any embedded Java code.

Struts is categorized as aModel 2 request-based web application framework.[2]

Struts also supportsinternationalization by web forms, and includes a template mechanism called "Tiles" that (for instance) allows the presentation layer to be composed from independent header, footer, menu navigation and content components.

See also

[edit]

References

[edit]
  1. ^Graff, Stefan (2024)."Struts1 - Reloaded". Github. Retrieved2024-02-13.
  2. ^Shan, Tony (2006)."Taxonomy of Java Web Application Frameworks".2006 IEEE International Conference on e-Business Engineering (ICEBE'06). Proceedings of 2006 IEEE International Conference on e-Business Engineering (ICEBE 2006). pp. 378–385.doi:10.1109/ICEBE.2006.98.ISBN 0-7695-2645-4. Retrieved2010-10-10.

Bibliography

[edit]

External links

[edit]
.NET
C++
ColdFusion
Common Lisp
Haskell
Java
JavaScript
Back end
Server-side
Full-stack
Front end
Client-side
Perl
PHP
Python
Ruby
Rust
Scala
Smalltalk
Other languages
Top-level
projects
Commons
Incubator
Other projects
Attic
Licenses
Retrieved from "https://en.wikipedia.org/w/index.php?title=Apache_Struts_1&oldid=1331404675"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2026 Movatter.jp