Practical RichFaces, Second Edition
Copyright 2011 by Max Katz and Ilya Shaikovsky
All rights reserved. No part of this work may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording, or by any information storage or retrieval system, without the prior written permission of the copyright owner and the publisher.
ISBN-13 (pbk): 978-1-4302-3449-4
ISBN-13 (electronic): 978-1-4302-3450-0
Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, logo, or image we use the names, logos, and images only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark.
The use in this publication of trade names, trademarks, service marks, and similar terms, even if they are not identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to proprietary rights.
President and Publisher: Paul Manning
Lead Editor: Steve Anglin
Technical Reviewer: Jason Lee
Editorial Board: Clay Andres, Steve Anglin, Mark Beckner, Ewan Buckingham, Gary Cornell, Jonathan Gennick, Jonathan Hassell, Michelle Lowman, James Markham, Matthew Moodie, Duncan Parkes, Jeffrey Pepper, Frank Pohlmann, Douglas Pundick, Ben Renow-Clarke, Dominic Shakeshaft, Matt Wade, Tom Welsh
Coordinating Editor: Jessica Belanger
Copy Editor: Kimberly Burton
Compositor: Mary Sudul
Indexer: Spi Global
Cover Designer: Anna Ishchenko
Distributed to the book trade worldwide by Springer Science+Business Media, LLC., 233 Spring Street, 6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax (201) 348-4505, e-mail .
For information on translations, please e-mail .
Apress and friends of ED books may be purchased in bulk for academic, corporate, or promotional use. eBook versions and licenses are also available for most titles. For more information, reference our Special Bulk SaleseBook Licensing web page at www.apress.com/info/bulksales
.
The information in this book is distributed on an as is basis, without warranty. Although every precaution has been taken in the preparation of this work, neither the author(s) nor Apress shall have any liability to any person or entity with respect to any loss or damage caused or alleged to be caused directly or indirectly by the information contained in this work.
The source code for this book is available to readers at www.apress.com
. You will need to answer questions pertaining to this book in order to successfully download the code.
To Victoria and Evelyn
Max
I dedicate this book to my wife, Zoya, and our son, Nikita,
who are my inspiration in everything I do
Ilya
Contents at a Glance
Contents
About the Authors
Max Katz is a senior systems engineer and lead RIA (Rich Internet Application) strategist at Exadel, a software development company. He is a well-known speaker appearing at many conferences, webinars, and JUG (Java Users Groups) meetings.
Max leads Exadels RIA and mobile strategy. Part of this role is working as the developer advocate for Tiggr Mobile Apps Builder (gotiggr.com
), a cloud-based application for building mobile web and native apps for any device. In addition, Max leads Exadels open-source projects (exadel.org
), such as Fiji, Flamingo, and JavaFX Plug-in for Eclipse.
Max has been involved with RichFaces since its inception, publishing numerous articles, providing consulting and training, and authoring the first edition of Practical RichFaces (Apress, 2008). Max also co-authored the DZone RichFaces 3 Refcard and the DZone RichFaces 4 Refcard. You can find Maxs writings about RIA and mobile technologies on his blog, mkblog.exadel.com
, and you can find his thoughts about these topics and others on Twitter at @maxkatz
.
Max has a BS in computer science from the University of California, Davis, and an MBA from Golden Gate University.
Ilya Shaikovsky is a product engineer at Exadel. He has worked on the popular RichFaces project since its inception.
As part of the RichFaces project, Ilya gathered new component requirements, built new custom components, and developed RichFaces demo applications. He also acted as a community liaison and helped answer customers and users questions. In addition, Ilya has led a number of large enterprise development projects that used RichFaces, solving many performance and scalability problems along the way. He also led the Exadel Fiji project, a rich JSF library for wrapping Flash and JavaFX as JSF components. Prior to the RichFaces project, Ilya worked on the Exadel Studio product line, now part of JBoss Developer Studio and JBoss Tools.
Ilya has produced a wide variety of information on RichFaces. He acted as a reviewer on the first edition of Practical RichFaces and wrote a chapter in it. He also co-authored the DZone RichFaces 3 Refcard and the DZone RichFaces 4 Refcard. In addition to this, he is the author of two RichFaces-related blogs: in.relation.to/Bloggers/Ilya
and www.jroller.com/a4j/
. You can follow Ilya on Twitter at @ilya_shaikovsky
.
Ilya has a masters degree in computer science from Belarusian State University in the Republic of Belarus.
About the Technical Reviewer
Jason Lee is a senior member of the technical staff for Oracle, where he works on the GlassFish project on the Administration Console and RESTful Administration interface teams. He has more than 14 years of professional experience, ranging from Java AWT desktop applications to enterprise web applications, in a variety of languages and frameworks. Jason has been involved with JavaServer Faces since 2005, both as a committer on Mojarra, the JSF reference implementation, as well as being a member of the JSF 2.0 Expert Group. He is active in the Oklahoma City Java Users Group, both as a speaker and former president. He blogs about various technologies at http://blogs.steeplesoft.com
. Jason lives in Oklahoma with his wife, two sons, and one Boxer.
Acknowledgments
We are very fortunate to know some very smart people who helped us make this book so much better. We want to thank Maksim Turchyn, Eugenia Sergueeva, Philip Daineko, Philip Daineko, Andrii Kokov, and Anton Udovichenko (all from Exadel) for providing initial technical review.
We would like to extend a very big thank you to Willhelm Lehman, Ileana Lehman, Jay Balunas, Bernard Labno, Adrian Mitev, Whesley Hales, Brian Leathem, Daniel Hinojosa, Lukas Frync, Pavol Pitonak, Demetrio Filocamo, Prabhat Jha, Gleb Galkin, Anton Belevich, and Maksim Kashynski, whose amazing technical reviews made the book so much better.
We want to extend a special thank you to Jason Lee for his technical expertise and for patiently reviewing all our code examples.
We want to give a special thank you to Charles Cowens for always being there to edit our materials, provide writing advice, and trying to make our English sound better.