× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



I normally just monitor this list on the Archives, but I felt compelled to 
subscribe so I can post a response on this Struts question.

Joe, some of your responses show that you do not really know what Struts 
is.

Struts is NOT the set of JSP tag libraries that come with the 
distribution.  Those tag libraries are provided as a convenience with the 
Struts distribution and the developers have always gone out of their way 
to inform users that development of those tag libraries are dead and that 
you should move to other libraries like JSTL and eventually JSF.

So what is Struts?  Struts is the ActionController servlet that provides 
the controller framework in an MVC or JSP Model II architecture.  It 
provides the glue, and more importantly the separation, in the form of its 
XML configuration files, between your Model code and your View.  You can 
use hand-coded JSP and scriplets, you can use JSP with any tag libraries, 
you can use JSF or you can use something altogether different like 
Velocity. 

The tag libraries that came with Struts were always there just to help 
people avoid falling into the trap of coding scriplets that do more than 
just presentation.  You can use many, if not all of the Struts tag 
libraries in a JSP that isn't even using the Struts controller framework. 
The same is true of Tiles.  It is a technology that was developed 
independent of Struts.  Since a lot of Struts users were using both 
together in their projects it was simply decided to add it to the Struts 
distribution and encourage its usage.

Struts will not be right for every project and if you choose not to use it 
that is fine.  Even the Struts developers concede that it is not the 
perfect framework.  The main reason I chose to use Struts is that it 
provides a framework to cleanly separate my code.  It allowed me to easily 
develop a "Model" that can be used in any Java application, regardless of 
whether Struts is involved.  Likewise, if the need arises, it is also very 
easy with Struts for me to take my view, developed in JSP with tag 
libraries, and swap in another technology, perhaps JSF, that provides more 
benefits.

Articles like this one show that none of these technologies are dying, 
they are evolving so that they can specialize in the area they want to 
focus on.  In the case of Struts, that is providing a Controller framework 
for browser-based applications.

http://www-106.ibm.com/developerworks/java/library/j-integrate/?Open&ca=daw-co-news
web400@xxxxxxxxxxxx

Mark

PS - Besides the tag libraries, there are a number of web technologies 
that were developed along side Struts and are included in the 
distribution:

commons-validator allows you to define validation routines, such as saying 
a field is all upper case, or  numeric only, or a date.  This can cause 
JavaScript to automatically be included in your JSP, but also a second 
server-side validation to occur.

commons-pool/dbcp provides object and database pooling.

commons-logging provides a logging framework.  You can plug in log4j, or 
Java 1.4 logging or write your own.  I wrote a simple one on iSeries that 
puts log messages in the joblog of the job.

All of these are included with Struts but can be used independently of the 
Struts Controller as well.

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.