Like Struts, WebWork is a framework that is fairly established within the J2EE webapp space although it's interesting that I've only ever come across two types of WebWork users - those that have never heard of it and those that love it.
Guillermo Castro has posted a Wicket implementation of the webapp comparison that I started a while ago. It's an interesting read and the contrast with most page/request based webapp frameworks is amazing.
Struts is the grandaddy of Java webapp frameworks so it's fitting that we start our tour here. I think it's probably safe to say that Struts was the first model 2 (web MVC) framework to gain widespread adoption in the Java arena and to this day it's still used by many people.
For completeness, I wanted to show how the JSP pages from the JSTL version could be written using the JSP XML syntax.
It's been a while since the last blog entry, but let's continue our look at the webapp frameworks with another model 1 implementation, this time using the JavaServer Pages Standard Tag Library (JSTL).
Before we dive into the frameworks, I want to drop back to basics to give some context behind why the frameworks exist and what benefits they provide. For this reason, let's look at a naive model 1 implementation of the sample application. If you're already familiar with the whole model 1 vs. model 2 thing, you might want to skip reading this particular entry.
Before we kick off our look at webapp frameworks, let's establish the domain model we're working with.
So, to compare webapp frameworks we need an example web application.
"Imho this is a complete waste of time and it will be another biased comparison without any real use whatshowever." So, why am I doing this?
Struts, WebWork, Stripes, Spring MVC, Wicket, Tapestry, JSF, etc, or even rolling your own. With so many J2EE web application frameworks to choose from, how do you decide which one to use?
In "Got Servlets?", Greg is asking what we'd like to see in the next major revision of the Java Servlets specification. In no particular order, here are my initial thoughts.
It's still relatively early days for J2EE 1.4 in the real world, but where are all the implementations?
The Servlet 2.3 specification is implemented inconsistently between vendors, so what do you do?
I've just upgraded my Mac OS X installation from Jaguar to Panther and was surprised to see some open source Java tools included in the distribution.
It's common that you'll find somebody using XDoclet to help build their EJBs, but how often do you find people using it to help with the J2EE web tier?
Integrate Tomcat and Apache on Mac OS X without recompiling anything!
The EJB specification places restrictions on bean providers, and one of these is accessing the filing system. This leads to two questions - why is this and how do we get around it?
The question is how to test JSP custom tags, and one answer is TagUnit.
Installing Tomcat 4 as an NT service is an easy task, if you have the right command!
Professional JSP, 3rd Edition is nearing completion and covers lots of the new JSP 2.0 features that will make building JSP-based web applications much easier.