If I haven’t blogged for a long time, that’s because I was busy writing a book about Java EE 6. As some of you already know, I’m expert member on various JSRs, including Java EE 6. Last year I have been approached by Apress who proposed me to write a book about Java EE 6 in the From Novice to Professional collection. At first I wasn’t sure because I’ve already written a book and know the workload that it represents. But I’ve been a reader of Apress books for a long time, an appreciate them. I was finally convinced to participate to such quality books.
So here it is : Beginning Java™ EE 6 Platform with GlassFish™ 3: From Novice to Professional. Well, actually the book is gone to printing and will be published end of May. So stay tune, and be ready to buy a copy of it (or an ebook version). The book focuses on the novelties of Java EE 6 and covers most of the specifications. 450 pages structured as follow :
- Chapter 1 briefly presents Java EE 6 essentials and the tools used throughout the book (JDK, Maven, JUnit, Derby and GlassFish v3).
- The persistent tier is described from Chapter 2 to Chapter 5 and focuses on JPA 2.0. After a general overview with some hands-on examples (Chapter 2), Chapter 3 delves into the object-relational mapping (mapping attributes, relationships and inheritance). Chapter 4 shows you how to manage and query entities while Chapter 5 presents their lifecycle, callback methods and listeners.
- To develop a transaction business logic layer with Java EE 6, you can naturally use EJBs 3.1. These are described from Chapter 6 to Chapter 9. Following an overview of the specification, its history and a hands-on example (Chapter 6), Chapter 7 concentrates on session beans, their programming model, as well as the new Timer Service. Chapter 8 focuses on the lifecycle of EJBs and interceptors, while Chapter 9 explains transactions and security.
- Chapter 10 to Chapter 12 shows you how to develop a presentation layer with JSF 2.0. After an overview of the specification (Chapter 10), Chapter 11 centers on how to build a web page with JSF and Facelets components. Chapter 12 shows you how to interact with an EJB backend and navigate through pages.
- Finally, the last chapters present different ways to interoperate with other systems. Chapter 13 shows you how to exchange asynchronous messages with Java Message Service (JMS) and Message Driven Beans (MDBs). Chapter 14 focuses on SOAP web services while Chapter 15 covers RESTful web services.
Writing a book is work intensive, and when you write about such new technologies, you need the help of people. I would like first to thank Alexis Midon and Sebastien Auvray who co-authored the RESTful web services chapter. A special thanks to Alexis Moussine-Pouchkine who kindly accepted to write the foreword of this book as well as the section on GlassFish. He was also a big help in contacting the right people to give me a hand on particular topics. I’m thinking of Ryan Lubke for JSF 2.0, Paul Sandoz for JAX-RS 1.1 and François Orsini for Derby. Thanks to Damien Gouyette for his help on JSF 2.0 and for his Subversion repository ;o) Thanks to Arnaud Heritier who wrote the section on Maven and Nicolas de Loof who gave a last proofreading on the topic. Sebastien Moreno helped me on JUnit as well as reviewing the entire manuscript with David Dewalle and Pasacal Graffion.
I could not have written this book without the help and support from the Java community: people who gave a bit of their time, helping me through emails, mailing lists or forums. Of course, the first that come to my mind are the mailing lists of the JCP expert groups. Thanks to the expert members and the spec leads (Roberto Chinnici, Bill Shannon, Kenneth Saks, Linda DeMichiel, Michael Keith, Reza Rahman, Adam Bien…)
I’ll keep you posted with some technical content about Java EE 6.