Book Review: Spring Web Flow Web Development
Right now there are two trends to develop web applications, either you
choose the RIA model or a conversational approach. In the former, say
Flex with Cairgorm, both the model and the state is handled by the
client. In the later, the server manages the scope sending a view to
the browser which acts as a renderer. Of course, interactivity has
improved over the years and nowadays partial requests are a must to
improve user experience. Spring WebFlow is the SpringSource approach to a server side (work/page) flow management for web applications and Spring Web Flow Web Development, the book, (I could think of better names!) tries to explain how to leverage it.
The
task is not minor because, let's face it, Java is a very complex
platform and to start with WebFlow you should have a good understanding
of JEE (at least JSF and the Servlet APIs), Spring and MVC in general.
AJAX is welcome as well. The book, of course, can't help you there
(you'd need a whole collection for that). This is not for novices!
Fortunately a lot of people have learned JEE and Spring through the
years and it's a matter of learning Webflow step by step but in depth.
Now,
here the book shines. I like the formating, very clear and clean, and
the language, simple and direct. I would have changed the chapter
structure a little though. I missed individual chapters for persistence
(Security has one) and Spring MVC (Faces has one) and I would have
reordered some things here and there (configuration is scattered) but
that's subjective and overall the steps make sense. The concepts (flow,
action, state, transition, continuation) are well defined and you get a
grasp pretty soon but some times the book is too comprehensive like
when enumerating the methods and fields of the available variables
(messageContext, flowExecutionContext et al). This makes for a hard
reading but it will be invaluable as a reference book to some. I prefer
IDEs for that task though. In the same sense I missed more diagrams and
graphs (I'm not referring to UML class diagrams here). In a book about
flows it should be pretty easy to plot concepts using some circles here
and there. In my mind, circles are not less valuable than XML snippets
(the book has tons of these don't worry) and the reader will gladly
accept some pictures to clarify concepts (and thank you for them).
Nothing too fancy, this one (extracted from the book) is more than
enough:
In
summary, the book is extensive and a great tool to learn first, and as
a reference guide later, to Spring Webflow. It's dense and it explains
lots of concepts in depth. Be warned that to extract all value this
book requires previous knowledge of complex notions, among them:
Spring, JSF, AJAX, persistence/ORM, Security, unit testing and probably
more. The authors have made the effort to introduce all these
libraries/skills when they're first used but that just lessens the
burden (a bit). All in all, an easy candidate to recommend to those who
need to extract all the power that Webflow 2 has to offer or teams that
are about to start a new project and need an initial push with the
technology.
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)





Comments
jiji530 (not verified) replied on Tue, 2009/06/30 - 12:12am
eugene base replied on Wed, 2009/07/01 - 12:04am
From the documentation, Spring Web Flow is the module of Spring for implementing flows. The Web Flow engine plugs into the Spring Web MVC platform and provides declarative flow definition language.
cobra insurance
eugene base replied on Thu, 2009/07/02 - 5:26am
Right now there are two trends to develop web applications, either you choose the RIA model or a conversational approach. In the former, say Flex with Cairgorm, both the model and the state is handled by the client.
thanks,
search engine optimization
green boal replied on Thu, 2009/07/09 - 6:45am
john green green replied on Mon, 2009/10/26 - 3:27am
Veer Singh replied on Sun, 2010/10/10 - 2:34pm
Again, I really liked how Spring Web Flow 2 Web Development serves as both a jump-start on SWF2 and also covers technologies outside of SWF (Spring Security, build tools, Apache Tiles, etc). The book isn’t a detailed reference manual, that leaves you feeling you still don’t know how to use the technology, but gives the right amount of walk-through examples and framework documentation for best seo .
When finished with the book you will understand how to install SWF2, how to build and use the examples. You will have numerous, feature-rich examples the authors build throughout the book. You’ll know how to use SWF2 in a request-response Spring MVC app and also with a JSF application. You get a solid tutorial on using Apache Tiles (kind of odd in a SWF book), a very detailed explanation of Spring Security and integrating Spring Security with SWF. You also will understand how to test your flow definition and SWF application while also learning about EasyMock.