At least since Java EE 6 everybody is talking about Java Server Faces (JSF). Programming JSF is just
nice for developers. But sometimes using JSF for certain types of projects might lead to some
issues. We know of projects which had huge problems with
the memory consumption and performance of the application. But you can check this yourself
by opening your Glassfish server's admin console with your browser: the admin console is
a JSF application available out of the box for configuration of your Glassfish installation.
It has a non-trivial UI with many components. I faced performance issues there, but now imagine
hundreds or thousands of users would use an application like this frequently (or even a more complex application).
Unfortunately, in Java development we often tend to have an attitude like "Memory is always available, performance is not a problem".
Of course, JSF has not only drawbacks - there are definitely reasons why projects and developers tend to use JSF more and more.
We like JSF. However, this is not a reason for forgetting about other
technologies and frameworks out there. One of the frameworks we came across is
Struts 2. Although Glassfish developers might not use
Struts 2 (i.e. because they prefer JSF) we have decided to offer tutorials about how to
get Struts 2 running on Glassfish. We will also cover some advanced topics.