"I never got the chance to meet the inventors of `Notes', but these guys were true visionaries." This is the first sentence in a 748 pages book about XPages that was recently published by IBM Press.
The book is written by Martin Donnelly, Mark Wallace and Tony McGuckin with a foreword by Philippe Riand. Although all authors declare that "none of us had been down the book-writing road before", the book is well written, even for readers that do not have english as the first language.
The main content starts with a high level overview about XPages. Even if you are already experienced in XPages development, it is worth reading this chapter. Start writing your first XPages application and follow the instructions step by step. The resulting application is a good starting point to put enhancements on top.
If you run into a problem regarding security settings on the server take a look at the very end of the book where you find the settings that have to be applied to your server.
IMHO, this information should be part of the "Getting Everything You Need" chapter.
The anatomy of an XPage is described in detail in chapter 4. Newbees to this field should read this chapter carefully. You will need this information if you want to dig deeper into XPages development later on.
Chapter 12 explains how to build your own user interface controls. This part of the book is not easy to understand for a non experienced developer, but if you follow the step by step instruction carefully, you will succeed.
All over the book you find tons of source code and numerous screenshots. It would be a good idea to make the source code available for download. But perhaps it is already available and I missed this part in the book.
The book also gives credit to all of the members of the Notes Community that started back in 8.5 with spreading the news about XPages in blogs, podcasts etc. Take these ressources as a supplement to the information you find in the book.
As a conclusion, I would recommend this book to every developer that wants to start with XPages development.
Unless you've been living under a rock for the last couple of weeks, you're probably aware of the newly released "Mastering XPages" book by Martin Donnelly, Mark Wallace, and Tony McGuckin. As a emerging XPages developer it couldn't have come at a better time. Since the release of XPages in 8.5 I've been trying to get some XPages development skills and it's been a pretty hit or miss effort. Although there have been some very good tutorials out there and plenty of technical tips and tricks, learning this technology is not always easy when you're a sole developer in a company who is constantly being tasked with new projects (RAD anyone?). In my case it's been almost impossible to find the time to go out to all the forums, wiki's, and blogs to gather this information together into a meaningful collection of articles.
Having said that, I have started diving into the book and it's just what I needed to pull all this information together, really filling in the gaps! Although I'm only a short way into Chapter 4, Anatomy of an XPage, I'm really "getting" it more than I've been able to in the last 2 years. I've been developing in Notes since V2 and all skills have been self taught and by example. Yep, they seem to have it nailed down!
I was very humbled when I was asked to be a technical reviewer for the new book Mastering XPages: A Step-by-Step Guide to XPages Application Development and the XSP Language by IBM Press. I refer to the authors as the "Lotus Dream Team" because who better to publish a book on XPages but the folks who have led the development effort: Martin Donnelly, Mark Wallace, Tony McGuckin, and Jim Quill. The depth of knowledge here is deep folks.
As a technical reviewer my role was to read each chapter and test each example, make sure everything worked as expected, and then provide my feedback. I can't say enough of how I enjoyed the book. It is not your typical approach for learning development in a new language. The author's approach is to have the reader learn how to do everything in the source panel first as opposed to the graphical interface. The concept is that the reader will learn XPages from the bottom up and in depth. This will lay the foundation to understand the fundamentals of the language, and provide you with the skills to read XSP markup and understand how everything works together at runtime.
Well, I have to tell you, I thought I knew XPages very well prior to reading this book. Not so! It really took my skills to the next level. I feel much more comfortable reading the XSP source and identifying an issue quickly. It's second nature now.
The other thing I enjoyed about this book, is the Author's insight into the development of this product. In various chapters they point out and explain the behind the scenes knowledge and the history of the technology..... why certain decisions were made, why things work the way they do. For example, XPages in the Notes client and the technology and challenges behind that. That type of information can only be delivered from this team of Authors, and it made the book that much more enjoyable.
Here's a list of the table of contents:
Part I Getting Started With XPages
-Chapter 1 A Little XPages History
-Chapter 2 Getting Everything You Need
-Chapter 3 Building Your First XPages Application
Part II XPages Development: First Principles
-Chapter 4 Anatomy of an XPage
-Chapter 5 XPages and JavaServer Faces
-Chapter 6 Building XPages Business Logic
Part III Data Binding
-Chapter 7 Working with Domino Documents
-Chapter 8 Working with Domino Views
-Chapter 9 Beyond the View Basics
Part IV Programmability
-Chapter 10 Custom Controls
-Chapter 11 Advanced Scripting
-Chapter 12 XPages Extensibility
-Chapter 13 XPages in the Notes Client
Part V Application User Experience
-Chapter 14 XPages Theming
-Chapter 15 Internationalization
Part VI Performance, Scalabilty & Security
-Chapter 16 Application Performance & Scalability
-Chapter 17 Security
Part VII Appendixes
-Appendix 1 XSP Tags Quick Reference
-Appendix 2 XSP Style Sheet Reference
-Appendix 3 Useful XPages Sites on the Net
I definitely recommend this book for Beginners, Intermediates, and Advanced XPage developers....there's something in there for everyone.
Two years after the official release of XPages in Notes/Domino version 8.5, developers finally have in one place all the documentation they need to create real-world XPages applications. In the Preface the authors acknowledge with some understatement that the lack of a single comprehensive source of XPages information has been a challenge for those seeking to exploit this promising technology.
The authors, all from the IBM development lab in Ireland, also recognize the difficulty of writing for a diverse audience. This book is both a tutorial and a comprehensive reference. If you are just getting started, you can safely skip Chapter 5: XPages and JavaServer Faces, a brief section on working with managed beans in Chapter 11, Chapter 12 on XPages Extensibility and a section on Composite Applications in Chapter 13. For the more advanced developer this material is a gold mine. Chapters on internationalization, XPages in the Notes client, security and performance/scalability round out this impressive effort.
I would have liked to see more practical examples of Dojo integration in Chapter 11. For example, constructing an outline or creating a dashboard page with Dojo charts.
There's a sample .NSF file to accompany each chapter. You can download a Zip file containing all the example databases from the IBM Press web site with no registration hassles. It's important to note that this book covers Notes/Domino 8.5.2. Many of the sample databases are based on the 8.5.2 Discussion template, so you can examine the code in earlier 8.5 versions but you will need Domino Designer 8.5.2 or a Domino 8.5.2 server to run them. (Designer 8.5.2 is also a free download.)
Until now, the most comprehensive XPages source that I could find was the free PDF: "Redbooks Wiki: Building Domino Web Applications using Domino 8.5.1". This is still an extremely useful document, and its step-by-step tutorials (also with downloadable NSF's) are a great place to start if you are new to XPages. (A minor complaint: free wiki-based content means no proofreader.)
If you've waited to get started with XPages, this book will save you hours of time searching blogs and discussions for coding patterns and undocumented features. If you've already begun developing with XPages, this book will help you take your apps to the next level by giving you a better understanding of what's happening under the covers and specific how-to tips.
Robert A. Balfe
XPages itself is a marvel in the rapid application development space and this book carries suit. I got the book about two weeks ago and have already read most of it and have created many of the reference projects to play with. The best thing I like about the book is it is the real thing. From installing Domino Designer to a full reference section, the book covers anything and everything related to learning XPages, XSP, and even the Domino document model. This is hands down the single best resource I can find for learning the technology. The authors did a wonderful job explaining every aspect of XPages development. I have been personally doing a lot of web based development in Dojo and the way XPages integrates with Dojo is brilliant. You will inherently learn about the capabilities of Dojo just by reading this book, and there is an entire section dedicated to Dojo. This book is much more than just a book about XPages and XSP, it clearly shows how RAD based development for web based projects should be done. With this book you will hit on every major aspect of enterprise web development: internationalization, security, performance, extensibility and themes. They even cover running your applications off line in the Lotus Notes client!
For the Lotus Notes developer it shows how you can leverage your knowledge of the Domino platform, agents, formula language, and the back-end classes. This is not your traditional Domino development world so be prepared to learn a new approach but leverage what you already know.
Great job to the authors, Martin, Mark, and Tony for this information packed, 750 page gem of knowledge!