I've seen a couple of comments online to the effect that Seam is some kind of JBoss-only thing. This is not the case, Seam doesn't have any hard dependencies to anything other than the standard Java EE 5 APIs.
Recently, Simon Brown put together a set of
for a very simple blogger application that could be used to compare Java web frameworks. I have
my reservations about the actual requirememts he put together (in particular, there is no
form submission!) but since some other
have bitten, I've gone ahead and ported the example to Seam. I want to put a massive caveat around
this post: Seam is absolutely not designed for applications like blogs or web forums; these kind of
problems are very easy to solve using something like PHP or Ruby on Rails and there is no really
good reason to use Java for a problem like this (unless Java is all you know). We have a set
of requirements here with /no conversations/ and /no business processes/, so all the sophisticated
state management machinery of Seam is redundant. Nevertheless, frameworks need to make simple things
easy, and you'll see how little Java code we need to write to solve this simple problem using Seam.
People using the Criteria API have either transparently or knowingly
used a ResultTransformer .
A ResultTransformer is a nice and simple interface that allows you to
transform any Criteria result element. E.g. you can make any Criteria
result be returned as a java.util.Map or as a non-entity Bean.