Indeed, the authors of the book have very detailed knowledge about vaadin 7. I am working with vaadin for many years now. And i think that i have a good experience using vaadin. But the vaadin 7 cookbook is really one of the greatest books i ever owned. There are so many different examples contained for all the different layers of vaadin 7. From client side widgets to databinding.
The book isn’t only very useful for people with good knowledge, but also for beginners. It comes with the main concepts of vaadin an provides tons of examples how to implement things properly. Also extended examples are available too. For instance “Binding tabs with a hard URL” shows how URI fragments may be used to control tab sheets. If a tab is selected the URI fragment of the browser URL will be changed. And this change triggers a tab switch. Nice idea. I never thought about implementing it. But i will keep in mind.
Extending client side widgets may become to a challenge sometimes. They are implemented using Java and have to become compiled to widget sets (java script). Since vaadin is based on GWT, also native java script code is supported in your java widget. The TriStateCheckbox demos how to injects snippets of js code into your client. If you wanna get started with extending or writing client side widgets, the book is a perfect way learning how to do. Another very useful feature covered by the book are vaadin forms. They became enhanced with vaadin 7 and are so more powerful then the vaadin 6 forms.
Not at least grails and spring integration is discussed in details. Since i am using OSGi in my applications this topics wheren’t of main interest for me. But they are detailed and i could learn some additional things about the JEE world.
There is only one chapter i really missed – the OSGi integration. But also if you are implementing vaadin applications based on OSGi, you will need all the other informations.
As a summary i really can recommend that book for everyone who is looking forward to start programming vaadin or already does.