This week's book giveaway is in the Cloud/Virtualization forum.
We're giving away four copies of Building Blockchain Apps and have Michael Yuan on-line!
See this thread for details.
Win a copy of Building Blockchain Apps this week in the Cloud/Virtualization forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Paul Clapham
  • Liutauras Vilda
  • Knute Snortum
  • Bear Bibeault
Sheriffs:
  • Devaka Cooray
  • Jeanne Boyarsky
  • Junilu Lacar
Saloon Keepers:
  • Ron McLeod
  • Stephan van Hulst
  • Tim Moores
  • Carey Brown
  • salvin francis
Bartenders:
  • Tim Holloway
  • Piet Souris
  • Frits Walraven

Struts work-alikes?

 
Greenhorn
Posts: 10
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Howdy!
I'm trying to find web application frameworks similar to Struts for the purpose of a compare-and-contrast style research project.
Although it appears that most of this forum is directed towards struts-related discussions, I'm hoping that some of y'all can point me toward some resources for finding its competitors.
So, what projects do you know of that work to solve similar problems as Struts? Basically, the whole MVC / Model2 shtick.
Thanks!
-daniel
 
Sheriff
Posts: 15044
252
Mac Android IntelliJ IDE Eclipse IDE Spring Debian Java Ubuntu Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
A couple I've come across recently are SOFIA and Barracuda.
 
Daniel Hedrick
Greenhorn
Posts: 10
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I meant to follow-up on this when I found the information. There are two nice compilations that I came across. They are
http://forum.java.sun.com/thread.jsp?forum=92&thread=208584#788670
and
http://www.waferproject.org/index.html
Wafer looks cool; it's a research project that appears to be dedicated to providing a compare/contrast between lots of open source web app frameworks.
-daniel
 
author
Posts: 3252
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Useful links. What I'm really missing on the Wafer list is Rod Johnson's Spring framework, which grew out of the design philosophy and framework classes described in his J2EE Design and Development book -- a truly exceptional book, by the way, which comes highly recommended indeed.
Spring is a framework from someone who knows how to write frameworks, and that is a rare breed indeed. It is lightweight, generally well thought out, does not intrude on your classes and it's pluggable at every corner. Integrating third party code with it is usually a doddle. It supports complexity but keeps simple things simple -- cool new features are judged by their cost/benefit ratio before inclusion.
In short, it is a lot of things that Struts is not. I have used Struts extensively, and have written chapters about it. It is definitely a useful framework; as an early MVC implementation it was solid, and over time it has gained a lot of features and momentum. Its design, however, is mediocre. It is heavyweight, intrusive, class-based rather than interface-based and not nearly flexible enough. New features do not seem to be critically tested for their cost/benefit ratio, and many of them represent missed opportunities. Consider, for instance, the convoluted and inflexible way the Validator tries to implement non-trivial validation rules that involve dependencies between fields: what is wrong with the gazillion expression languages out there (including JSP EL)? Hopefully, the Struts 2 redesign will incorporate all these lessons from the past, but neither the work on Struts 1.1 nor the roadmap for 2 encourage high expectations in this regard.
I should add that Spring and Struts cannot be compared directly. Spring is an application framework, not just a web application framework. It covers all layers of the application -- including such things as Inversion of Control configuration, EJB support, a JDBC library, Hibernate integration, declarative transaction support and AOP -- and is not just an MVC implementation. At the same time, it does not try to do implement as much view functionality as Struts does, relying instead on its easy integration with other tools such as the JSTL or Tapestry or indeed with any custom code that you might want to write. Its breadth and flexibility can make it hard to pin down; rather than imposing a single monolithic straitjacket structure on you, it adapts to your needs and supports all code that you write. It does not force you to buy into all of the framework, but encourages you to use the bits that you need.
Check Spring out. It's in its pre-1.0 milestone release, but most of the codebase is stable, having been in production use for quite some time. Documentation is available but needs some work to cover the most recent features.
- Peter
[ October 11, 2003: Message edited by: Peter den Haan ]
 
What do you have to say for yourself? Hmmm? Anything? And you call yourself a tiny ad.
Java file APIs (DOC, XLS, PDF, and many more)
https://products.aspose.com/total/java
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!