Preface
This is my first book with OReilly, and Im very grateful for their help and encouragement. Their editorial team is first class, and efficient. It was great working with you.
I, like many of you, have been using Spring for a long, long time. I wasnt initially convinced I needed Spring Roo (to be honest). It wasnt until I sat with Ben Alex and Stefan Schmidt about a year ago and really started looking at it that I realized it was simply too valuable to ignore. Theres a lot of power here and what really struck me was how that power didnt imply compromise: you can always go home again, and assert full control over your application. Eventually, you stop worrying about that at all, and just let Spring Roo do the work. One adage you hear a lot in the devops/build tool world is that, your application is not a unique snowflake. Thats true of infrastructure code, too. Spring Roo helps you bootstrap all that tedious infrastructure code, if you let it. Its like fast-forwarding a movie to the fun parts, quicker. It almost feels like cheating!
I want to thank my coauthor, Steve Mayzak, for all his help. We did this book and prepared a talk for OSCON, all in a very short space. It was a three-person job, but he took up the slack and got us to the finish line. Amazing work and I definitely owe you, kind sir.
I want to thank my wife, Richelle. Shes learned, I think, that I am not a multitasking husband. Every now and then, I disappear into our home office and come back with a beard a week later (and, sometimes, some useful byproduct like a chapter or working code). It takes a patient, saintly woman to suffer that; she has, at every turn. Thanks, honey!
I want to thank Neo4J and Vaadin for their extra help on this book. Roos powerful add-on architecture makes it very easy to look into new technologies because the cost to invest is so low, and iteration is very quick. Neo4j and Vaadin are two technologies that we cover in this book, but there are numerous other examples in the addon ecosystem, and I hopeif nothing elsethat youll explore.
Finally, thanks are owed to the Roo team, including Ben Alex, Stefan Schmidt, Alan Stewart, James Tyrrell, and Andrew Swan. The technologys wonderful, and it would not be but for their incredible dedication and hard work. Now, if you guys have any ideas about a Roo-Book-Preface-Writer add-on, Id love to hear it...
Josh Long
This being my first book, I looked to my fellow author, Josh, for help and guidance. Without him this book wouldn't be what it is so my heartfelt thanks goes out to him first and foremost.
My road to Spring Roo was not a direct one. Being a serious Grails fan, when I first heard about Spring Roo, I brushed it off as yet another RAD framework that couldn't possibly stand up to the mighty Grails! But, over time I was worn down by watching demo's, reading blogs about it and eventually trying it out myself. The first thing that impressed me was the Roo Shell, what a powerful tool. My first app with Roo was built with no manual, using only the hint feature in the shell to guide me. Before you knew it, I had a full blown Spring app up and running with UI, Validation and more. I was quickly becoming a fan. Long story short, I am now a huge Spring Roo fan and that is mostly what motivated me to write this book with Josh.
If you have followed a similar path to me, you will no doubt find a lot of power in with Spring Roo, just like I have. This short introduction to it will hopefully motivate you to dive deeper and possibly become an active contributor on the project. After all, a lot of the power in Spring Roo comes from addons and yours would be warmly welcomed. I happen to love the GWT and Vaadin addons but I'm more excited to see what comes next.
Before you move on, a little mush. I'd really like to thank my wife Jennifer and my daughter Makenzee for putting up with my hectic schedule lately. Coming up for air and spending time with them really makes it all worth it. "In the Face!!" girls! I know I said it before but seriously, Josh Long taught me a lot about writing, finding your voice and just getting it done so Josh, I owe ya and thanks.
Steve Mayzak
Conventions Used in This Book
The following typographical conventions are used in this book:
Plain text
Indicates menu titles, menu options, menu buttons, and keyboard accelerators (such as Alt and Ctrl).
ItalicIndicates new terms, URLs, email addresses, filenames, file extensions, pathnames, directories, and Unix utilities.
Constant width
Indicates commands, options, switches, variables, attributes, keys, functions, types, classes, namespaces, methods, modules, properties, parameters, values, objects, events, event handlers, XML tags, HTML tags, macros, the contents of files, or the output from commands.
Constant width bold
Shows commands or other text that should be typed literally by the user.
Constant width italic
Shows text that should be replaced with user-supplied values.
Note
This icon signifies a tip, suggestion, or general note.
Warning
This icon indicates a warning or caution.
Using Code Examples
This book is here to help you get your job done. In general, you may use the code in this book in your programs and documentation. You do not need to contact us for permission unless youre reproducing a significant portion of the code. For example, writing a program that uses several chunks of code from this book does not require permission. Selling or distributing a CD-ROM of examples from OReilly books does require permission. Answering a question by citing this book and quoting example code does not require permission. Incorporating a significant amount of example code from this book into your products documentation does require permission.
We appreciate, but do not require, attribution. An attribution usually includes the title, author, publisher, and ISBN. For example: Getting Started with Roo by Josh Long and Steve Mayzak (OReilly). Copyright 2011 Josh Long and Steve Mayzak, 978-1-449-30790-5.
If you feel your use of code examples falls outside fair use or the permission given above, feel free to contact us at .
Wed Like to Hear from You
Please address comments and questions concerning this book to the publisher: