Posted by simongbrown
on November 4, 2005 at 5:45 AM PST
So, to compare webapp frameworks we need an example web application.
So, to compare webapp frameworks we need an example web application. I've chosen to build a simple blog. Here are the functional requirements.
- The home page will display a list of the 3 most recent blog entries, in reverse chronological order. The following information will be displayed for each blog entry.
When a "read more" link is clicked, the resulting page will display the following information about the selected blog entry.
- If an excerpt is present, the excerpt will be displayed with a "read more" link to the full blog entry.
- If no excerpt is present, the full body will be displayed.
And here are some non-functional requirements, just to make things a little more interesting.
HTTP status codes will be used where appropriate (e.g. 404 for page not found).
UTF-8 will be used as the character encoding to support international character sets.
Dates and times will be formatted appropriately for the locale of the owning blog.
Dates and times will be presented in the time zone of the blog.
A strict MVC architecture will be adopted, with all access to views being made through the controller.
The technology constraints are as follows.
- The web application will make use of and validate against the following standards.
- Java SE 5.0
- Servlet 2.4 and JSP 2.0
- Tomcat 5.5.x
Here are some screenshots to show what this all looks like.
Figure 1 : Home page.
Figure 2 : Blog entry detail page.
Figure 3 : Page not found page.
As I've said before, I hoping to make this an iterative process and there's plenty of scope for adding some interactivity into the example application. Next up is a look at the domain model.