Chapter 1. About This Book [DRAFT]

Table of Contents

1.1. This is a DRAFT! Give your opinion!
1.2. Who this book is for
1.3. How To Use This Book
1.4. What you will learn from this book
1.5. Contributors

1.1. This is a DRAFT! Give your opinion!

If you have any comments, questions, or general-purpose harassment you would like give us about this book, then please use the comment form at the bottom of each page! We promise that we will try to incorporate any feedback you give (minus the profanity, of course), will respond to your questions, and credit you appropriately in section 4 below.

1.2. Who this book is for

This book is for Java developers who are interested in learning about Enterprise Content Management (ECM) systems and the Nuxeo 5 EP system in particular. This book assumes that you are familiar with Java software development, so terms like CLASSPATH, source control, and system properties are not covered. It is helpful, but not required, if you have some familiarity with Web development in Java using tools like Java 2 Enterprise Edition (J2EE) and Java Server Faces; readers with this experience will have more "Ah ha! I see how it works now!" moments, but readers without this experience can still be productive. The Nuxeo system makes extensive use of XML (the eXtensible Markup Language) files for configuration and managing its behavior. Again, if you do not have experience with XML you can follow the examples by rote and you will have success, but a reader with XML experience will have more insight. Finally, the authors have built "skeletons" for many lessons on which the reader in expected to put the flesh to complete each project. These lessons are "checked out" or "downloaded" using a version control system-if you are Java developer and do not yet know a version control system, take this opportunity to learn Subversion, the tool we use in this book! The skeletons and fleshed-out skeletons are built from the command line using Maven, a build management tool. We do not expect readers to have experience with or understanding of Maven, as this tool is worthy of a number of volumes in and of itself and we expect readers to only follow along.

1.3. How To Use This Book

This book is designed to be read in order, as a series of lessons. Each lesson teaches a specific concept and the lessons build quite heavily on each other. The goal of each lesson is specified in the "Objective" stated immediately after the title of the chapter. You can always explore and experiment after completing each lesson, as the skeleton code for each lesson contains the result of the previous lessons (so there is no need to worry you will not be able to continue if end up in a dead-end).

1.4. What you will learn from this book

If ECM systems are not in your travel plans today, now is a good time to come forward and de-plane. Heard on any commercial airline flight in the USA.

This book is unapologetically about ECM systems. The Association for Information and Image Management (AIIM), an industry consortium representing many companies including companies that build ECM systems, defines ECM like this:

This book is unapologetically about ECM systems. Wikipedia defines ECM systems this way:

Enterprise Content Management (ECM) is the strategies, methods and tools used to capture, manage, store, preserve, and deliver content and documents related to organizational processes

This book will teach you a specific set of tools and techniques used to extend the Nuxeo 5 Enterprise Platform an open-source ECM system and build new applications on top of it. While these techniques are broadly applicable-every ECM system on the market today claims it is extensible to some degree-we are going to focus on Nuxeo partly because staying within Nuxeo allows us to provide you with detailed lessons and explanations to allow deep exploration of the platform and its capabilities. Each lesson has an objective of teaching you a practical skill that you can use to develop, deploy, or administer Nuxeo.

1.5. Contributors

In the interest of full disclosure, the other reason we are focused on Nuxeo for teaching you about Enterprise Content Management is that it pays our bills! All the primary authors of this book work for Nuxeo SA, a company that provides support, consulting, and custom software development based on the Nuxeo Platform. This book also has been reviewed by a great many outside folks-people who use and develop for the Nuxeo platform every day.

External Contributors

We would like to thank the following external people for their outstanding help in making this book effective and for their contributions to the website.

  • JM. Pascal, of http://www.open-source-ecm.com/

  • Brice Dunwoody, of http://www.cmswire.com/

  • Philippe Bollinne

  • Quan Mai

These are the members of the Nuxeo team that contributed to this book. There was an enormous amount of discussion and thoughtful email about this content, so rather than try to name each contribution, they will just be listed in alphabetical order.

  • Éric Barroca, a.k.a 'The Boss Man'

  • Julien Carsique

  • Thierry Delprat, a.k.a. 'Tiry'

  • Benoit Delbosc

  • Alain Escaffre

  • Stéfane Fermigier, a.k.a 'The Chairman'

  • Florent Guillaume

  • Benjamin Jalon

  • Stéphane Lacoin

  • Bogdan Stefanescu

  • Anahide Tchertchian

  • Julien Thimonier

  • Nicolas Ulrich

  • Radu Darlea

Errors, omissions, and out-and-out blunders are, of course, entirely the fault of the editor, Ian Smith.