Network Performance of HTML5 Web Application in Smartphone

Total Page:16

File Type:pdf, Size:1020Kb

Network Performance of HTML5 Web Application in Smartphone Master Thesis Electrical Engineering Nov2011 Network Performance of HTML5 Web Application in Smartphone Saroj Sharan Regmi Suyog Man Singh Adhikari School of Computing Blekinge Institute of Technology 371 79 Karlskrona Sweden This thesis is submitted to the School of Computing at Blekinge Institute of Technology in partial fulfillment of the requirements for the degree of Master of Science in Electrical Engineering. The thesis is equivalent to 20 weeks of full time studies. Contact Information: Author(s): Saroj Sharan Regmi E-mail: [email protected] Suyog Man Singh Adhikari E-mail: [email protected] University advisor(s): David Erman School of Computing Blekinge Institute of Technology 371 79, Karlskrona, Sweden E-mail: [email protected] University Examiner(s): Patrik Arlos School of Computing Blekinge Institute of Technology 371 79, Karlskrona, Sweden E-mail: [email protected] School of Computing Internet : www.bth.se/com Blekinge Institute of Technology Phone : +46 455 38 50 00 371 79 Karlskrona Fax : +46 455 38 50 57 Sweden ii ABSTRACT Hypertext markup language 5 (HTML5), a new standard for HTML, enriched with additional features is expected to override all the basic underlying overhead needed by other applications. By the advent of new extension, HTML5, the web’s basic language is transplanted from a simple page layout into rich web application development language. Furthermore, with the release of HTML5, traditional browsing is expected to change and modify accordingly and on the other hand the potential users will have an alternative rather than sticking in platform and OS dependent native applications. This thesis deals with the readiness assessment of HTML5 with regard to different smart phones- Android and Windows. In order to visualize the fact, we analyzed different constraints like DNS lookup time, page loading time, memory and CPU consumption associated with two applications-Flash and HTML5 running right through the smart phones. Furthermore, the comparative analysis is performed in different network scenarios- Wi-Fi and 3G and user experience is estimated based on network parameters. From the experiments and observations taken, we found that android phones provide better support for HTML5 web applications than windows mobile devices. Also, the HTML5 applications loading time is limited by the browser rendering time rather that the content loading time from the network and is also dependent on hardware configuration of device used. Keywords: HTML5, Flash, DNS lookup time, CPU, Memory, Page loading, 3G, Wi-Fi. I II ACKNOWLEDGEMENT We are grateful to our parents for their enormous support, encouragement and blessing which strengthen our ability to complete this task. We would like to express our heartfelt gratitude to our supervisor Dr. David Erman, School of Computing, Blekinge Institute of Technology, for his advice and support. Without his guidance and instruction this thesis work would not reach so far. At last but not the least, we would also like to thank Dr. Patrik Arlos for granting us scenario for the thesis work and Ravichandra Kommalapati for his technical support and friendly environment. We would also like to thank Mr. Seth Fogie of AirScanner for providing us with free two years license for the use of MobileSniffer tool for our purpose of study. III IV TABLE OF CONTENTS ABSTRACT ...........................................................................................................................................I ACKNOWLEDGEMENT ................................................................................................................ III TABLE OF CONTENTS .................................................................................................................... V LIST OF FIGURES .......................................................................................................................... VII LIST OF TABLES ........................................................................................................................... VIII 1 INTRODUCTION ....................................................................................................................... 1 1.1 AIMS AND OBJECTIVES ........................................................................................................... 1 1.2 SCOPE OF THESIS .................................................................................................................... 2 1.3 PROBLEM STATEMENT ........................................................................................................... 2 1.4 RESEARCH QUESTIONS ........................................................................................................... 2 1.5 RESEARCH METHODOLOGY ................................................................................................... 2 1.5.1 Selection of Papers ........................................................................................................... 3 1.5.2 Network Behavior study ................................................................................................... 3 1.5.3 Page Loading Time .......................................................................................................... 3 1.5.4 CPU and Memory Utilization .......................................................................................... 3 1.6 MOTIVATION ......................................................................................................................... 4 1.7 MAIN CONTRIBUTION ............................................................................................................. 4 1.8 THESIS OUTLINE .................................................................................................................... 4 2 LITERATURE REVIEW AND STATE OF THE ART ........................................................... 5 2.1 MOBILE PHONES .................................................................................................................... 5 2.2 HTML5 ................................................................................................................................. 5 2.3 SURVEY OF RELATED WORKS ................................................................................................ 5 3 EXPERIMENT SETUP ............................................................................................................... 7 3.1 EXPERIMENTAL ENVIRONMENT ............................................................................................. 7 3.2 NETWORK PERFORMANCE EXPERIMENTAL SETUP ................................................................. 8 3.3 PAGE LOADING TIME EXPERIMENTAL SETUP ......................................................................... 8 3.4 SMARTPHONE PERFORMANCE EXPERIMENT SETUP ............................................................... 9 3.5 ON THE VALIDITY OF TOOLS USED ........................................................................................ 9 3.5.1 MobileSniffer ................................................................................................................... 9 3.5.2 Sharkroot .......................................................................................................................... 9 3.5.3 Task Manager ................................................................................................................ 10 3.5.4 Process Monitor ............................................................................................................. 10 4 RESULT AND ANALYSIS ....................................................................................................... 11 4.1 NETWORK PERFORMANCE CONSTRAINT-DNS LOOKUP TIME ............................................... 11 4.1.1 Wi-Fi Network scenario ................................................................................................. 11 4.1.2 3G Network Scenario ..................................................................................................... 12 4.1.3 Summary ........................................................................................................................ 13 4.2 NETWORK PERFORMANCE CONSTRAINT- PAGE LOADING TIME ............................................ 13 4.2.1 Wi-Fi Network Scenario ................................................................................................ 13 4.2.2 3G Network scenario...................................................................................................... 14 4.2.3 Summary ........................................................................................................................ 15 4.3 DEVICE PERFORMANCE CONSTRAINT -MEMORY CONSUMPTION .......................................... 15 4.3.1 Wi-Fi Network Scenario ................................................................................................ 15 4.3.2 3G Network Scenario ..................................................................................................... 16 4.3.3 Summary ........................................................................................................................ 16 4.4 DEVICE PERFORMANCE CONSTRAINT -CPU CONSUMPTION ................................................. 17 4.4.1 Wi-Fi Network Scenario ................................................................................................ 17 4.4.2 3G Network Scenario ..................................................................................................... 17 V 4.4.3 Summary .......................................................................................................................
Recommended publications
  • HTC HD2 User Manual  Please Read Before Proceeding
    HTC HD2 User Manual 2 Please Read Before Proceeding THE BATTERY IS NOT FULLY CHARGED WHEN YOU TAKE IT OUT OF THE BOX. DO NOT REMOVE THE BATTERY PACK WHEN THE DEVICE IS CHARGING. YOUR WARRANTY IS INVALIDATED IF YOU DISASSEMBLE OR ATTEMPT TO DISASSEMBLE THE DEVICE. PRIVACY RESTRICTIONS Some countries require full disclosure of recorded telephone conversations, and stipulate that you must inform the person with whom you are speaking that the conversation is being recorded. Always obey the relevant laws and regulations of your country when using the recording feature of your phone. INTELLECTUAL PROPERTY RIGHT INFORMATION Copyright © 2009 HTC Corporation. All Rights Reserved. The HTC logo, the HTC quietly brilliant logo, HTC HD2, HTC Sense, Footprints, and HTC Care are trademarks of HTC Corporation. Microsoft, Windows, Windows Mobile, Windows XP, Windows Vista, ActiveSync, Windows Mobile Device Center, Internet Explorer, MSN, Hotmail, Windows Live, Outlook, Excel, PowerPoint, Word, OneNote and Windows Media are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries. Bluetooth and the Bluetooth logo are trademarks owned by Bluetooth SIG, Inc. Wi-Fi is a registered trademark of the Wireless Fidelity Alliance, Inc. Java, J2ME and all other Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries. Copyright © 2009, Sun Microsystems, Inc. All Rights Reserved. Copyright © 2009, Adobe Systems Incorporated. All Rights Reserved. microSD is a trademark of SD Card Association. Google, Google Maps, and YouTube are trademarks of Google, Inc. in the United States and other countries.
    [Show full text]
  • Návod K Obsluze Zařízení HTC HD2  Přečtěte Si Před Použitím Zařízení
    Návod k obsluze zařízení HTC HD2 2 Přečtěte si před použitím zařízení BATERIE NEBUDE PO VYBALENÍ PLNĚ NABITÁ. NEVYJÍMEJTE MODUL BATERIE, POKUD SE PŘÍSTROJ NABÍJÍ. VAŠE ZÁRUKA NEBUDE PLATIT, POKUD ZAŘÍZENÍ ROZMONTUJETE NEBO SE JEJ ROZMONTOVAT POKUSÍTE. OCHRANA SOUKROMÍ Některé země vyžadují úplné zpřístupnění zaznamenaných telefonních hovorů a stanovují, že musíte osobu, se kterou hovoříte, informovat o tom, že hovor zaznamenáváte. Při používání funkce záznamu v telefonu vždy dodržujte příslušné zákony a nařízení vaší země. INFORMACE O PRÁVECH K DUŠEVNÍMU VLASTNICTVÍ Copyright © 2009 HTC Corporation. Všechna práva vyhrazena. Logo HTC, logo HTC „quietly brilliant“, HTC HD2, HTC Sense, Footprints a HTC Care jsou ochranné známky společnosti HTC Corporation. Microsoft, Windows, Windows Mobile, Windows XP, Windows Vista, ActiveSync, Centrum zařízení Windows Mobile, Internet Explorer, MSN, Hotmail, Windows Live, Outlook, Excel, PowerPoint, Word, OneNote a Windows Media jsou registrované ochranné známky nebo ochranné známky společnosti Microsoft Corporation v USA a dalších zemích. Bluetooth a logo Bluetooth jsou ochranné známky vlastněné společností Bluetooth SIG, Inc. Wi-Fi je registrovaná ochranná známka společnosti Wireless Fidelity Alliance, Inc. Java, J2ME a všechny ostatní známky založené na názvu Java jsou ochranné známky nebo registrované ochranné známky společnosti Sun Microsystems, Inc. v USA a dalších zemích. Copyright © 2009, Sun Microsystems, Inc. Všechna práva vyhrazena. Copyright © 2009, Adobe Systems Incorporated. Všechna práva vyhrazena. microSD je ochranná známka společnosti SD Card Association. Google, Mapy Google a YouTube jsou ochranné známky společnosti Google, Inc. v USA a dalších zemích. Copyright © 2009, Aplix Corporation. Všechna práva vyhrazena. Opera Mobile od společnosti Opera Software ASA. Copyright 1995-2009 Opera Software ASA. Všechna práva vyhrazena.
    [Show full text]
  • Topic 14: Client- Side Rendering CITS3403 Agile Web Development
    Topic 14: Client- Side Rendering CITS3403 Agile Web Development Reading: The Flask Mega-Tutorial, part 14 Semester 1, 2021 Miguel Grinberg https://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-xiv-ajax Accessing a REST API • A REST API takes your application from the web to the internet. Any device with TCP/IP can interact with the application through HTTP requests. • We can interact with a REST API through a number of mediums: command line, Postman, or a web browser. • These applications create and send http requests to the REST API and receive http responses. • Postman can also be used for mocking APIs and automated testing. Javascript and DOM • As a simple example of consuming a REST API we will look at writing a low level single page application that interacts directly with the API. • It will use AJAX to send and receive requests from the server. • It will use Javascript and DOM to update the web page. • We will (redundantly) include it with an existing server-side rendering app. Single Page Applications • Single Page Applications have the browser/client do the heavy lifting in a web application: The server just provides the data while the client does the logic and rendering AJAX AJAX = Asynchronous JavaScript And XML. • AJAX is not a programming language. • AJAX just uses a combination of: – A browser built-in XMLHttpRequest object (to request data from a web server) – JavaScript and HTML DOM (to display or use the data) • AJAX is a misleading name. AJAX applications might use XML to transport data, but it is equally common to transport data as plain text or JSON text.
    [Show full text]
  • Smartphones in the U.S.: Market Analysis
    Smartphones in the U.S.: Market Analysis Scott Cromar November 29, 2010 Business Strategy for Lawyers Professor Amitai Aviram Smartphones in the U.S.: Market Report © 2010 Scott Cromar. This work is licensed under a Creative Commons Attribution 3.0 United States License. Details on this license can be found here: http://creativecommons.org/licenses/by/3.0/us/ – 2 – Table of Contents I. Executive Summary ............................................................................................................................ 4 A. Market Definition ............................................................................................................................ 4 B. Threat Analysis ................................................................................................................................ 4 C. Intermarket Effects ......................................................................................................................... 4 II. Background & Supply Chain .............................................................................................................. 5 A. A Short History ................................................................................................................................ 5 B. Software vs. Hardware .................................................................................................................... 6 C. Operating Systems .........................................................................................................................
    [Show full text]
  • The Jasper Framework: Towards a Platform Independent, Formal Treatment of Web Programming
    The Jasper Framework: Towards a Platform Independent, Formal Treatment of Web Programming James Smith Imperial College London, United Kingdom [email protected] This paper introduces Jasper, a web programming framework which allows web applications to be developed in an essentially platform indepedent manner and which is also suited to a formal treat- ment. It outlines Jasper conceptually and shows how Jasper is implemented on several commonplace platforms. It also introduces the Jasper Music Store, a web application powered by Jasper and imple- mented on each of these platforms. And it briefly describes a formal treatment and outlines the tools and languages planned that will allow this treatment to be automated. 1 Introduction These days a web application may span both server and client side. Facebook is a good example, with much of the site’s functionality being implemented using JavaScript and executed in the browser. Com- munication between client and server sides is also, typically, not just characterised by requests from the browser, requests are also made by JavaScript in the form of Ajax calls. It is not at all obvious, for example, that Facebook fakes conventional browser requests. Clicking on menu items appears to result in such conventional requests being made, since the whole page seems to change, but in fact these are often Ajax calls and the whole page is changed dynamically, rather than a new page being served. In this way the chat pane can remain “on top”, while the page changes “underneath”. Such techniques used to characterise what were known as rich web applications but they are becoming so commonplace nowadays that a rich web application might be considered the norm.
    [Show full text]
  • HTC HD2 Používateľská Príručka  Pred Pokračovaním Si Prečítajte Nasledujúce Informácie
    HTC HD2 Používateľská príručka 2 Pred pokračovaním si prečítajte nasledujúce informácie BATÉRIA NIE JE PRI VYBRANÍ ZO ŠKATULE ÚPLNE NABITÁ. POČAS NABÍJANIA ZARIADENIA NEVYBERAJTE BATÉRIU. ZÁRUKA STRÁCA PLATNOSŤ, AK ZARIADENIE ROZOBERIETE ALEBO SA HO POKÚSITE ROZOBRAŤ. OBMEDZENIA NA OCHRANU SÚKROMIA V niektorých krajinách sa vyžaduje úplné zverejnenie nahrávaných telefonických rozhovorov a stanovuje sa nutnosť informovania osoby, s ktorou telefonujete, že rozhovor sa nahráva. Pri používaní funkcie nahrávania vo Vašom zariadení vždy rešpektujte príslušné zákony a predpisy danej krajiny. INFORMÁCIE O DUŠEVNOM VLASTNÍCTVE Autorské práva © 2009 HTC Corporation. Všetky práva vyhradené. HTC, logo HTC, HTC Innovation, HTC Sense, HTC Peep, Footprints a HTC Care sú ochranné známky a/alebo servisné známky spoločnosti HTC Corporation. Microsoft, MS-DOS, Windows, Windows NT, Windows Server, Windows Mobile, Windows XP, Windows Vista, ActiveSync, Windows Mobile Device Center, Internet Explorer, MSN, Hotmail, Windows Live, Outlook, Excel, PowerPoint, Word, OneNote a Windows Media sú buď registrované ochranné známky alebo ochranné známky spoločnosti Microsoft Corporation v USA a/alebo iných krajinách. Bluetooth a logo Bluetooth sú ochranné známky vlastnené spoločnosťou Bluetooth SIG, Inc. Wi-Fi je registrovaná ochranná známka spoločnosti Wireless Fidelity Alliance, Inc. Java, J2ME a všetky ostatné známky týkajúce sa Javy sú ochranné známky a/alebo registrované ochranné známky spoločnosti Sun Microsystems, Inc. v USA a v ďalších krajinách. Copyright © 2009, Sun Microsystems, Inc. Všetky práva vyhradené. Copyright © 2009, Adobe Systems Incorporated. Všetky práva vyhradené. microSD je ochranná známka asociácie SD Card Association. Google, Google Maps a YouTube sú ochranné známky spoločnosti Google, Inc. v USA a ďalších krajinách. Autorské práva © 2009, Aplix Corporation. Všetky práva vyhradené.
    [Show full text]
  • List Any Two Rich Internet Applications
    List Any Two Rich Internet Applications JoshuaLightfast cliffier? and funnier If flinty Hermy or gushiest run-up Barry her Mycenae usually step-in dangles his trancedly leukaemia or infringedisembosoms rolling orgenealogically, lace unrightfully is shamelessly.and doggo, how deepening is Bradford? Extraneous and druidic Desmond still outshoots his cembalist We are rich internet application is any code. Microsoft is not quite there yet to provide this kind of functionality in the browser, desktop applications, testing and deploying an application into a single integrated solution allowing administrators to monitor and control that process through a graphical interface. To test the application, similar to Adobe Flash. Multiple elements can have the form role. Use Cases for Rich Internet Applications 1 Background IAML. Listexecute possible actions on the crazy state A Robot. Select a date air time that works for you. The element does your own hazard control a grouping element that is expandable. Return generic command key leads workshops, list any two rich internet applications developed using hessian server. URL which points to the location of the Hessian service. Applets made Java popular in contemporary early days. The uniPaaS Enterprise Server lies at about heart is Rich Internet Application. Applets cannot use stored values are currently active child nodes they were used. Some functionality in any one feel for list or persons with lists require significant addition in web services provided input that is a concurrency token. Better just, use SQL parameters when you build SQL commands. Flex is not a magic wand. Automatic events include occurrences such as a timer running out and procedural events are occurrences triggered explicitly within the application code.
    [Show full text]
  • Secure Web Framework for Mobile Devices
    GC'12 Workshop: The 4th IEEE International Workshop on Management of Emerging Networks and Services Secure Web Framework For Mobile Devices Muneer Malik and Dharma P. Agrawal ([email protected], [email protected]) Center of Distributed and Mobile Computing, School of Computing Sciences and Informatics University of Cincinnati, Cincinnati OH 45221-0008, Abstract—A secure mobile web framework is proposed based HTML 5 based framework, which allows developers to write on MVC Struts 2 to support embedded browsers in mobile impressive apps that work on IOS (iPhone OS), Android, devices. The framework integrates JAAS with Tomcat Blackberry, Kindle Fire and many other devices. Fluid providing Authentication and Authorization. Encryption Animations, smooth scrolling and adaptive layouts are key Utility to support multiple providers, implementing a scheme attributes for HTML 5 based framework, rivaling native for short-lived session objects, support for the menu items technology. Financial Times (FT), a London paper is a HTML using xml configuration depending on the role and device 5 web app rather than a native app and “it helps publishers to category, view layer integration with Tiles 2 and rendering gain readers and sell more subscription without paying a views for both desktop and mobile without duplicating the platform fee” [3]. Struts 2 control action logic. Finally, an Electronic Medical Record – web application is designed and implemented for Although jQM is designed for writing mobile web apps, it Dialysis Center to further demonstrate the feasibility of the can also be used to build native apps that can be purchased and unified secure mobile web framework.
    [Show full text]
  • HTC Desire Finds Second Network - New T-Mobile HTC Desire
    Mar 05, 2010 15:44 GMT HTC Desire Finds Second Network - New T-Mobile HTC Desire The new Android powered HTC Desire has now been released on T-Mobile pay monthly contract deals, the Desire is one of two new Android phones to be released by HTC in Q2 of 2010 with the second being the HTC Legend. The new Desire was originally known as the HTC Bravo and incorporates the latest Android 2.1 operating system found in the Google phone, the Nexus One, in fact this is not where the similarities end as the new HTC Desire is almost exact in terms of specifications aside from a couple of additions. These new features include the manufacturers own Sense user interface which makes for a clean and smooth user experience, the second is the addition of Flash 10.1 pre-installed which makes viewing web pages a far easier affair. The same 3.7 inch AMOLED (Active Matrix Organic LED) touch screen is found in both models which is great for watching movies and web surfing as is the 5.0 mega pixel camera on the back of the handset which also has an LED flash, autofocus and zoom and is also capable of recording video in HD quality. Being an Android based phone there is multiple support for many of Google own applications and software titles, not least the pre-installed Google Maps application for finding your way, route planning and navigation. There is also access to the ever growing Android Market where you'll find thousands of new applications to download via HSDPA high speed data support.
    [Show full text]
  • Marsily-Msc2010
    U C L L S M . Richer Web Applications On Trends, Techniques and Standards Supervisor: Prof. J. V Master esis: Partial Fulllment of the Requirements for the Degree of Master in Business Engineering Charles M 2323.05.00 INGE22MS/G [email protected] Academic Year 2009-2010 . Acknowledgment I would like to thank my supervisor Prof. Jean V for providing me a subject as interesting as rich web applications. Writing this document has redened how I use the Web today. e e e In addition, this work might not have been possible without my family’s continuous support. .. C C i L F iii I v Disclaimer.................................................................. vi Content & objectives........................................................ vi 1 U RIA 1 1.1 Denition and criteria ................................................. 1 ick vs. thin applications ................................................. 3 Client/server applications vs. web applications................................. 4 RIA features and characteristics ............................................. 5 Deployment alternatives ................................................... 6 1.2 Why RIAs are emerging? .............................................. 6 1.3 Limitations ........................................................... 8 1.4 Web applications vs. native apps: what to choose for the iPhone?. 9 1.5 RIAs as a part of a broader Web 2.0 era ................................. 11 1.6 RIAs for enterprises ................................................... 14
    [Show full text]
  • Glasstube: a Lightweight Approach to Web Application Integrity
    GlassTube A Lightweight Approach to Web Application Integrity Per A. Hallgren Daniel T. Mauritzson Andrei Sabelfeld Keyflow AB & Ericsson AB & Chalmers University of Technology Chalmers University of Technology Chalmers University of Technology Gothenburg, Sweden Gothenburg, Sweden Gothenburg, Sweden [email protected] [email protected] [email protected] Abstract In the setting of web applications, data integrity is particularly The HTTP and HTTPS protocols are the corner stones of the crucial. Data integrity, or simply integrity in the rest of this paper, modern web. From a security point of view, they offer an all-or- requires that data sent over the network must be accurate and con- nothing choice to web applications: either no security guarantees sistent with the intended message. This inherently means that infor- with HTTP or both confidentiality and integrity with HTTPS. How- mation sent cannot be modified, and that the consignor is authentic. ever, in many scenarios confidentiality is not necessary and even In contrast, confidentiality requires that sensitive information must undesired, while integrity is essential to prevent attackers from not be leaked to an unauthorized party. Passive attackers are able compromising the data stream. to eavesdrop on the network and reuse any obtained sensitive in- We propose GlassTube, a lightweight approach to web applica- formation such as session tokens to impersonate the client for the tion integrity. GlassTube guarantees integrity at application level, server, and vice versa. Active attackers pose additional challenges without resorting to the heavyweight HTTPS protocol. GlassTube for integrity as they are able to suppress and modify messages in prevents man-in-the-middle attacks and provides a general method transit and mount fully-fledged man-in-the-middle attacks.
    [Show full text]
  • Pro Web 2.0 Application Development with GWT
    9853FM.qxd 4/15/08 11:14 AM Page i Pro Web 2.0 Application Development with GWT Jeff Dwyer Excerpted for InfoQ from 'Pro Web 2.0 Application Development' by Jeff Dwyer, published by Apress - www.apress.com 9853FM.qxd 4/15/08 11:14 AM Page ii Pro Web 2.0 Application Development with GWT Copyright © 2008 by Jeff Dwyer 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-59059-985-3 ISBN-10 (pbk): 1-59059-985-3 ISBN-13 (electronic): 978-1-4302-0638-5 ISBN-10 (electronic): 1-4302-0638-1 Printed and bound in the United States of America 9 8 7 6 5 4 3 2 1 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. Java™ and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc., in the US and other countries. Apress, Inc., is not affiliated with Sun Microsystems, Inc., and this book was written without endorsement from Sun Microsystems, Inc. Lead Editors: Steve Anglin, Ben Renow-Clarke Technical Reviewer: Massimo Nardone Editorial Board: Clay Andres, Steve Anglin, Ewan Buckingham, Tony Campbell, Gary Cornell, Jonathan Gennick, Matthew Moodie, Joseph Ottinger, Jeffrey Pepper, Frank Pohlmann, Ben Renow-Clarke, Dominic Shakeshaft, Matt Wade, Tom Welsh Project Manager: Kylie Johnston Copy Editor: Heather Lang Associate Production Director: Kari Brooks-Copony Production Editor: Liz Berry Compositor: Dina Quan Proofreader: Linda Marousek Indexer: Carol Burbo Artist: April Milne Cover Designer: Kurt Krames Manufacturing Director: Tom Debolski Distributed to the book trade worldwide by Springer-Verlag New York, Inc., 233 Spring Street, 6th Floor, New York, NY 10013.
    [Show full text]