Copyright © 2004 by Mehran Habibi
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.
Printed and bound in the United States of America 12345678910
Trademarked names may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, we use the names only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark.
Technical Reviewer: Bill Saez
Editorial Board: Steve Anglin, Dan Appleman, Gary Cornell, James Cox, Tony Davis, John Franklin, Chris Mills, Steven Rycroft, Dominic Shakeshaft, Julian Skinner, Jim Sumser, Karen Gavin Wray, John Zukowski
Assistant Publisher: Grace Wong
Project Manager: Nate McFadden
Copy Editor: Nicole LeClerc
Production Manager: Kari Brooks
Production Editor: Laura Cheu
Proofreader: Linda Seifert
Compositor: Susan Glinert Stevens
Indexer: Kevin Broccoli
Artist: Kinetic Publishing Services, LLC
Cover Designer: Kurt Krames
Manufacturing Manager: Tom Debolski
Distributed to the book trade in the United States by Springer-Verlag New York, Inc., 175 Fifth Avenue, New York, NY, 10010 and outside the United States by Springer-Verlag GmbH & Co. KG, Tiergartenstr. 17, 69112 Heidelberg, Germany.
In the United States: phone 1-800-SPRINGER, email <orders@springer-ny.com>, or visit http://www.springer-ny.com. Outside the United States: fax +49 6221 345229, email <orders@springer.de>, or visit http://www.springer.de.
For information on translations, please contact Apress directly at 2560 Ninth Street, Suite 219, Berkeley, CA 94710. Phone 510-549-5930, fax 510-549-5939, email <info@apress.com>, or visit http://www.apress.com.
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 http://www.apress.com in the Downloads section. You will need to answer questions pertaining to this book in order to successfully download the code.
This book is dedicated to my lovely wife, Angela Young, MD. I must have been really, really good in a previous life.
About the Author
Mehran Habibi is the coauthor of The Sun Certified Java Developer Exam with J2SE 1.4 (Apress, 2003) and Cracking the AP Computer Science Exam, 2004-2005 Edition (Princeton Review, 2004). He is also an application architect with BankOne in Ohio, where he resides with his lovely wife, Angela. Mehran has over nine years of IT experience, including positions with IBM, Executive Jet, UUNET, BankOne, and OCLC, in addition to working as a university lecturer, independent consultant, and Java certification trainer. Technologies of interest to him include Web services, wireless technologies, and XML/XSLT. Mehran's professional focus has been on architecture, project leadership, mentoring, team leadership, and programming from the mid-tier on back. Mehran holds certifications in both "The Other Company" and Java 2, and he graduated with a bachelor's of science degree in software engineering from the honors program at The Ohio State University.
Mehran is an amateur boxer, teaches martial arts at The Ohio State University, enjoys soccer, and has ruined his chess by playing too many speed games. You can contact him at <coach@influxs.com.>
About the Technical Reviewer
Bill Saez is a software engineer with Motorola in Ft. Lauderdale, Florida. While working with Motorola, Bill helped to create the world's first Java-powered wireless handset with J2ME and CLDC certification in 2000. Since then, he has continued to play an integral part in the commercialization and development of the J2ME platform and has authored several OEM APIs for iDEN handsets as well as J2ME Developer Guides for those products. Bill has been involved with Java development since its introduction and even served as a guinea pig for The Ohio State University's experimental Java software courses. He received his bachelor's degree in software engineering from The Ohio State University and is currently pursuing a master's degree in computer science from the University of Florida.
When he's not working or studying, Bill enjoys training for and running marathons, traveling with his family, and infrequently writing game reviews (http://www.epinions.com/user-billservo) in his copious spare time.
Acknowledgments
I'd like to thank Nate McFadden, Gary Cornell, Nicole LeClerc, and Laura Cheu from Apress for being such a joy to work with. I'd also like to acknowledge the strong contributions of various friends, including Terry Camerlengo, the excellent people at JavaRanch (http://www.javaranch.com), and various kind others who provided feedback and suggestions. In particular, I'm grateful for Jim Yingst's fine critical eye. I would also like to acknowledge the strong mathematical analysis provided by my father, Dr. Javad Habibi. Last but certainly not least, I'd like to thank my technical reviewer, Bill Saez, for an amazing technical eye and a very gentle style. I can't wait to see your book there, Bill.