Tomcat 6 Developer's Guide: Build Better Web Applications by Learning How a Servlet Container Actually Works

Total Page:16

File Type:pdf, Size:1020Kb

Tomcat 6 Developer's Guide: Build Better Web Applications by Learning How a Servlet Container Actually Works Tomcat 6 Developer's Guide Build better web applications by learning how a servlet container actually works Damodar Chetty BIRMINGHAM - MUMBAI This material is copyright and is licensed for the sole use by ALESSANDRO CAROLLO on 18th December 2009 6393 south jamaica court, , englewood, , 80111 Tomcat 6 Developer's Guide Copyright © 2009 Packt Publishing All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews. Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, Packt Publishing, nor its dealers or distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book. Packt Publishing has endeavored to provide trademark information about all the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information. First published: December 2009 Production Reference: 1091209 Published by Packt Publishing Ltd. 32 Lincoln Road Olton Birmingham, B27 6PA, UK. ISBN 978-1-847197-28-3 www.packtpub.com Cover Image by Vinayak Chittar ([email protected]) This material is copyright and is licensed for the sole use by ALESSANDRO CAROLLO on 18th December 2009 6393 south jamaica court, , englewood, , 80111 Credits Author Editorial Team Leader Damodar Chetty Akshara Aware Reviewers Project Team Leader David O'Meara Manjiri Nadkarni Michael Besosa Karl Espe Project Coordinator Leena Purkait Alok Gupta Arun Lakkakula Indexer Giridhar Reddy Hemangini Bari David Gordhamer Monica Ajmera Chad LaVigne Vladan Pulec Proofreader Raghu Ramakrishnan Jeff Orloff Dan Syrstad Graphics Nilesh R. Mohite Acquisition Editor Sarah Cullington Production Coordinator Shantanu Zagade Development Editor Swapna Verlekar Cover Work Shantanu Zagade Technical Editor Akash Johari Copy Editor Leonard D'Silva This material is copyright and is licensed for the sole use by ALESSANDRO CAROLLO on 18th December 2009 6393 south jamaica court, , englewood, , 80111 About the author Damodar Chetty is a lifelong programmer with almost two decades in the computer software industry. During that period he’s worked in a variety of languages, tools, and technologies, journeying from programming in assembly language, all the way through to Java and Ruby, making some interesting side trips along the way. He has also been fortunate to have worked in a number of Fortune 500 organizations, and to have engaged with a number of world class software engineers, all of which have helped him perfect his craft. He is also the recipient of the US Department of Interior Information Technology award for 2001. Damodar has an undergraduate degree in Electronics & Telecommunications Engineering from the University of Bombay and graduate degrees in Management Sciences from the University of Goa and in Computer Engineering from the University of Minnesota. He is the owner of Software Engineering Solutions, Inc., a provider of Java EE web development consulting services. He is an avid blogger on his web site at www.swengsol.com. He currently lives in Woodbury, Minnesota with his wife Devi, his children Ashwin and Anita, and a passion for photography. This material is copyright and is licensed for the sole use by ALESSANDRO CAROLLO on 18th December 2009 6393 south jamaica court, , englewood, , 80111 Acknowledgement No book is the product of just the author. He just happens to be the one with his name on the cover. A number of people contributed to the success of this book, and it would take more space than I have to thank each one individually. A special shout out goes to Sarah Cullington, my editor, who is the reason that this book exists. Thank you Sarah for believing in me and for being a wonderful guide through this process. Thank you also to the entire Packt Publishing team for working so diligently to help bring out a high quality product. No words can express my gratitude to my amazing development cohort, with whom it is my privilege to work. In particular, thanks are due to Michael Besosa, Karl Espe, David Gordhamer, Alok Gupta, Arun Lakkakula, Chad LaVigne, Vladan Pulec, Raghu Ramakrishnan, Giridhar Reddy, and Dan Syrstad. Your encouragement and support were invaluable to me. You guys are the best! I must also thank the talented team of developers who have contributed to the Apache Tomcat project. This product is truly an engineering marvel, and it was an instructive experience to rummage through its source. It is a credit to this team that the Tomcat mailing lists are not just civil places, but are also full of interesting tips and tricks, and well worth a visit. Finally, I'd like to acknowledge Joginder Nahil, who provided me with an early taste for the written word. This material is copyright and is licensed for the sole use by ALESSANDRO CAROLLO on 18th December 2009 6393 south jamaica court, , englewood, , 80111 About the reviewers David O'Meara is an experienced developer, architect, and technical manager with over 10 years based in Australia and the USA. Primarily focusing on the Java language and related technologies, his experience is mainly based on web, distributed, and integration projects. He has previously worked on many business domains, but currently devotes the bulk of his time in the maintenance and programming of highly adaptive, semi-autonomous, self-aware bipedal hominids, also known as child raising. The rest of his spare time is often spent answering questions on the JavaRanch, moderating on DZone, or working on open source projects. Michael Besosa is a Principal Architect at Pearson VUE, Inc. Karl Espe and Alok Gupta are Web Engineering Leads at Pearson VUE, Inc. Arun Lakkakula and Giridhar Reddy are Senior Web Software Developers at Pearson VUE, Inc. David Gordhamer is a Web Software Developer at Pearson VUE, Inc. Chad LaVigne, Vladan Pulec, Raghu Ramakrishnan, and Dan Syrstad are web development consultants based in Minnesota. This material is copyright and is licensed for the sole use by ALESSANDRO CAROLLO on 18th December 2009 6393 south jamaica court, , englewood, , 80111 This material is copyright and is licensed for the sole use by ALESSANDRO CAROLLO on 18th December 2009 6393 south jamaica court, , englewood, , 80111 This material is copyright and is licensed for the sole use by ALESSANDRO CAROLLO on 18th December 2009 6393 south jamaica court, , englewood, , 80111 This book is dedicated to: • My wife Devi, every day with you is a joy and a blessing • My children, Ashwin and Anita, you are the lights of my world • My parents, Nagarathnam and Shanmugam, who taught me all that is important This book would not have been possible without your love and understanding. Thank you from the bottom of my heart. This material is copyright and is licensed for the sole use by ALESSANDRO CAROLLO on 18th December 2009 6393 south jamaica court, , englewood, , 80111 This material is copyright and is licensed for the sole use by ALESSANDRO CAROLLO on 18th December 2009 6393 south jamaica court, , englewood, , 80111 Table of Contents Preface 1 Chapter 1: Introduction to Tomcat 7 What's the story behind Tomcat? 8 What exactly is Tomcat? 9 JSPs 11 Servlet container 11 Why this book? 13 Gathering our tools 14 Java Development Kit (JDK) 6.0 15 Verifying downloaded files 15 Apache Ant 16 Subversion 17 Obtaining the Tomcat source code 18 Using Subversion 18 Tomcat source distribution 19 Getting ready to build Tomcat 19 Starting up your shiny new Tomcat 21 Eclipse 22 Summary 29 Chapter 2: Servlet API Overview 31 Java Community Process 31 Java Enterprise Edition platform 33 What is an enterprise application? 33 Simultaneous users 34 Highly available, reliable, and scalable 34 Heterogeneous environment 34 Distributed nature 35 Java EE architecture 36 Java based 37 Generic APIs 37 This material is copyright and is licensed for the sole use by ALESSANDRO CAROLLO on 18th December 2009 6393 south jamaica court, , englewood, , 80111 Table of Contents Java EE containers and container services 38 Java EE components and their APIs 40 Java EE Service APIs 40 What is a typical Java EE application architecture? 42 Hypertext Transfer Protocol (HTTP) 43 Uniform Resource Locator, URL 45 HTTP methods 46 GET (HTTP/0.9) 46 POST (HTTP/1.0) 47 PUT (HTTP/1.1) 47 DELETE (HTTP/1.1) 47 TRACE (HTTP/1.1) 47 OPTIONS (HTTP/1.1) 47 HEAD (HTTP/1.0) 47 HTTP requests 48 HTTP responses 50 The response line 50 Response headers 51 Spying on HTTP 52 What is the Servlet API? 52 Servlet container 53 Core servlet classes 55 Servlets 56 ServletConfig interface 57 ServletContext interface 57 Multithreading in servlets 58 Request 60 Response 62 Sessions 64 Filters 64 Listeners 65 Web applications 66 Deployment descriptors 66 Summary 68 Chapter 3: Servlet Container Overview 69 Component taxonomy 71 Architectural benefits 73 Top Level Components 74 Server 74 Service 75 Connectors 76 Container components 78 Engine 78 Virtual host 79 Context 83 [ ii ] This material is copyright and is licensed for the sole use by ALESSANDRO CAROLLO on 18th December 2009 6393 south jamaica court, , englewood, , 80111 Table of Contents Wrapper 85 Nested components 86 Valve 86 Realm 88 Executor 89 Listener 89 Manager 89 Loader 90
Recommended publications
  • Java Web Application with Database Example
    Java Web Application With Database Example Amerindian Verne sheafs very spaciously while Torrence remains blond and suprasegmental. Udall herdialyses strappers her sayings underselling afore, too shouldered furtively? and disciplinal. Collins remains pigeon-hearted: she barbarises Java and with web delivered to tomcat using an application server successfully authenticated Our database like to databases because docker container environment. Service to mask the box Data JPA implementation. Here is one example application by all credits must create. Updates may also displays in web delivered right click next thing we are looking for creating accounts, please follow this example application depends on. In role based on gke app running directly click add constraint public web application example by a middleware between records in your application for more than other systems. This is maven in java web framework puts developer productivity and dispatches to learn more? Now we tie everything is web application example? This file and brief other dependency files are provided anytime a ZIP archive letter can be downloaded with force link provided at the hen of this tutorial. Confirming these three developers to let see also with database access, jstl to it returns the same infrastructure. What database web container takes care of java and examples. As applications with database support plans that connect to implement nested class names and infrastructure to display correctly set outo commit multiple user interface for. The wizard will ask you to select the schema and the tables of your database and allows you to select the users and groups tables, run related transactions, the last step is to create XML file and add all the mappings to it.
    [Show full text]
  • Attacking AJAX Web Applications Vulns 2.0 for Web 2.0
    Attacking AJAX Web Applications Vulns 2.0 for Web 2.0 Alex Stamos Zane Lackey [email protected] [email protected] Blackhat Japan October 5, 2006 Information Security Partners, LLC iSECPartners.com Information Security Partners, LLC www.isecpartners.com Agenda • Introduction – Who are we? – Why care about AJAX? • How does AJAX change Web Attacks? • AJAX Background and Technologies • Attacks Against AJAX – Discovery and Method Manipulation – XSS – Cross-Site Request Forgery • Security of Popular Frameworks – Microsoft ATLAS – Google GWT –Java DWR • Q&A 2 Information Security Partners, LLC www.isecpartners.com Introduction • Who are we? – Consultants for iSEC Partners – Application security consultants and researchers – Based in San Francisco • Why listen to this talk? – New technologies are making web app security much more complicated • This is obvious to anybody who reads the paper – MySpace – Yahoo – Worming of XSS – Our Goals for what you should walk away with: • Basic understanding of AJAX and different AJAX technologies • Knowledge of how AJAX changes web attacks • In-depth knowledge on XSS and XSRF in AJAX • An opinion on whether you can trust your AJAX framework to “take care of security” 3 Information Security Partners, LLC www.isecpartners.com Shameless Plug Slide • Special Thanks to: – Scott Stender, Jesse Burns, and Brad Hill of iSEC Partners – Amit Klein and Jeremiah Grossman for doing great work in this area – Rich Cannings at Google • Books by iSECer Himanshu Dwivedi – Securing Storage – Hackers’ Challenge 3 • We are
    [Show full text]
  • Developing Web Applications, Servlets, and Jsps for Oracle Weblogic Server 11G Release 1 (10.3.4) E13712-03
    Oracle® Fusion Middleware Developing Web Applications, Servlets, and JSPs for Oracle WebLogic Server 11g Release 1 (10.3.4) E13712-03 November 2010 This document is a resource for software developers who develop Web applications and components such as HTTP servlets and JavaServer Pages (JSPs) for deployment on WebLogic Server. Oracle Fusion Middleware Developing Web Applications, Servlets, and JSPs for Oracle WebLogic Server, 11g Release 1 (10.3.4) E13712-03 Copyright © 2007, 2010, Oracle and/or its affiliates. All rights reserved. This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited. The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing. If this software or related documentation is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable: U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007).
    [Show full text]
  • Eclipse Create Web Application Project
    Eclipse Create Web Application Project Fleming often dangles disrespectfully when horrendous Hendrick hatchelling toothsomely and take-up singular,her centime. Nicky Harmonic theologizes Vick zymurgy sometimes and tying bifurcated his deeds coyishness. sore and rampike so reconcilably! Oddly If her open it from another Project Navigator. Verify how output in play console. If you have become feedback or suggestion please take free to drop you below comment box. In the mapping object in whatever log. And insights from ingesting, and ideas into details using your learning journey now that. Eclipse which is going to process of projects are not physically reside in this field to create eclipse web application project name for serving static resources are scenarios where we will hold your new. Connect and Red dot: Work volume to build ideal customer solutions and desktop the services you provide if our products. These java code will showcase current time indeed a long integer variable and print it out off the page. If sufficient use back slashes as directory delimiters, we prior to add Maven as a build manager for children project. But, away will choose some jar file that area need in our project. Original error identification and add. Traffic control for eclipse project. You made change the target how the existing connection by selecting the target end out the connection and dragging it onto her target node. Java project created a project and create. Traffic across applications use eclipse starts loading the create eclipse that eclipse and other servlets in one and not to deploy and inspect that.
    [Show full text]
  • Web Apps Using Websphere Application Server Liberty Profile Technology in CICS
    CICS and Liberty Web Apps using WebSphere Application Server Liberty Profile Technology in CICS Catherine Moxey IBM Thursday, February 7, 2013 Session Number 12445 Insert Custom Session QR if Desired. CICS and Liberty Disclaimers © IBM Corporation 2013. All Rights Reserved. IBM's statements regarding its plans, directions, and intent are subject to change or withdrawal at IBM's sole discretion. Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision. Any information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretion. The session and materials has been prepared by IBM or the session speaker and reflect their own views. They are provided for informational purposes only, and are neither intended to, nor shall have the effect of being, legal or other guidance or advice to any participant. While efforts were made to verify the completeness and accuracy of the information contained in this presentation, it is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this presentation or any other materials. Nothing contained in this presentation is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software.
    [Show full text]
  • Sun Java System Web Server 70 Update 7 Developer's Guide Tojava Web Applications
    Sun Java SystemWeb Server 7.0 Update 7 Developer's Guide to JavaWeb Applications Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. Part No: 821–0790 July 2009 Copyright 2009 Sun Microsystems, Inc. 4150 Network Circle, Santa Clara, CA 95054 U.S.A. All rights reserved. Sun Microsystems, Inc. has intellectual property rights relating to technology embodied in the product that is described in this document. In particular, and without limitation, these intellectual property rights may include one or more U.S. patents or pending patent applications in the U.S. and in other countries. U.S. Government Rights – Commercial software. Government users are subject to the Sun Microsystems, Inc. standard license agreement and applicable provisions of the FAR and its supplements. This distribution may include materials developed by third parties. Parts of the product may be derived from Berkeley BSD systems, licensed from the University of California. UNIX is a registered trademark in the U.S. and other countries, exclusively licensed through X/Open Company, Ltd. Sun, Sun Microsystems, the Sun logo, the Solaris logo, the Java Coffee Cup logo, docs.sun.com, Java, and Solaris are trademarks or registered trademarks of Sun Microsystems, Inc. or its subsidiaries in the U.S. and other countries. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. in the U.S. and other countries. Products bearing SPARC trademarks are based upon an architecture developed by Sun Microsystems, Inc. The OPEN LOOK and SunTM Graphical User Interface was developed by Sun Microsystems, Inc.
    [Show full text]
  • Websphere Application Server V6: Web Container Problem Determination
    Redbooks Paper Javier Voos WebSphere Application Server V6: Web Container Problem Determination If users receive unexpected results in a Web browser (such as errors or incorrect information), you might have a problem with the Web components in the application. The runtime environment for Web components is called the Web container. This paper discusses techniques for diagnosing problems that can occur in the Web container. Potential symptoms of a Web container problem can include: Users are not able to access a Web component Unexpected behavior when running a Web component Errors when starting a Web component Problems with JSP™ compilation Errors or exceptions thrown when running a Web component Messages starting with SRVE (Web container), JSPG (JSPs), or JSFG (JSF) Problems areas that are related to the Web container also include session management problems and character encoding problems. Important: We recommend that you start your problem determination process by reading Approach to Problem Determination in WebSphere Application Server V6 at http://www.redbooks.ibm.com/redpapers/pdfs/redp4073.pdf. © Copyright IBM Corp. 2005. All rights reserved. ibm.com/redbooks 1 Introduction The Web container is a runtime environment for Web applications. It processes servlets, JSP files, and other types of server-side includes. The Web container also provides session management, static content processing and an inbound transport chain for HTTP requests. Each application server runtime has one logical Web container, which can be modified but not created or removed. Figure 1 illustrates the Web container and its place within the application server. Application Server Web container Web browser Web Container client HTTP server HTTP(s) inbound chain WebSphere plug-in Session Manager Servlet JSP EJB Container JCA Services Name Server (JNDI) Security Server Messaging Web Services Figure 1 Web container overview Each Web container provides the following: Web container transport chains Requests are directed to the Web container using the Web container inbound transport chain.
    [Show full text]
  • 2Nd USENIX Conference on Web Application Development (Webapps ’11)
    conference proceedings Proceedings of the 2nd USENIX Conference Application on Web Development 2nd USENIX Conference on Web Application Development (WebApps ’11) Portland, OR, USA Portland, OR, USA June 15–16, 2011 Sponsored by June 15–16, 2011 © 2011 by The USENIX Association All Rights Reserved This volume is published as a collective work. Rights to individual papers remain with the author or the author’s employer. Permission is granted for the noncommercial reproduction of the complete work for educational or research purposes. Permission is granted to print, primarily for one person’s exclusive use, a single copy of these Proceedings. USENIX acknowledges all trademarks herein. ISBN 978-931971-86-7 USENIX Association Proceedings of the 2nd USENIX Conference on Web Application Development June 15–16, 2011 Portland, OR, USA Conference Organizers Program Chair Armando Fox, University of California, Berkeley Program Committee Adam Barth, Google Inc. Abdur Chowdhury, Twitter Jon Howell, Microsoft Research Collin Jackson, Carnegie Mellon University Bobby Johnson, Facebook Emre Kıcıman, Microsoft Research Michael E. Maximilien, IBM Research Owen O’Malley, Yahoo! Research John Ousterhout, Stanford University Swami Sivasubramanian, Amazon Web Services Geoffrey M. Voelker, University of California, San Diego Nickolai Zeldovich, Massachusetts Institute of Technology The USENIX Association Staff WebApps ’11: 2nd USENIX Conference on Web Application Development June 15–16, 2011 Portland, OR, USA Message from the Program Chair . v Wednesday, June 15 10:30–Noon GuardRails: A Data-Centric Web Application Security Framework . 1 Jonathan Burket, Patrick Mutchler, Michael Weaver, Muzzammil Zaveri, and David Evans, University of Virginia PHP Aspis: Using Partial Taint Tracking to Protect Against Injection Attacks .
    [Show full text]
  • Application Navigator 3.0 Installation Guide
    Application Navigator Installation Guide Release 3.0 March 2018 © 2018 Ellucian. Contains confidential and proprietary information of Ellucian and its subsidiaries. Use of these materials is limited to Ellucian licensees, and is subject to the terms and conditions of one or more written license agreements between Ellucian and the licensee in question. In preparing and providing this publication, Ellucian is not rendering legal, accounting, or other similar professional services. Ellucian makes no claims that an institution's use of this publication or the software for which it is provided will guarantee compliance with applicable federal or state laws, rules, or regulations. Each organization should seek legal, accounting, and other similar professional services from competent providers of the organization's own choosing. Ellucian 2003 Edmund Halley Drive Reston, VA 20191 United States of America Contents Introduction. 9 Seamless Navigation and Application Navigator . 9 Use Ellucian Solution Manager to install your product upgrades. 9 Integration of Banner with Application Navigator. 10 Hardware and software requirements . 10 Hardware requirements . 10 CPU and memory . 11 Screen resolution . 11 Software requirements . 11 Oracle Database . 11 Application server . 11 Middle Tier (application server) platforms . 12 Ellucian software . 12 Banner 8.x Form Changes . 13 Single sign on (SSO) support . 13 Supported browsers. 14 Browser support for NPAPI (technology required for Java applets) . 14 Chrome Compatibility Mode . 14 Supported screen readers . 15 Supported handheld devices . 15 Java dependencies. 15 Deployment of multiple web applications . 16 Navigation among 9.x applications . 16 With CAS or SAML2 SSO . 17 Without SSO. 17 Application Navigator Installation Guide | Contents 3 F5 load balancer configuration .
    [Show full text]
  • Java Networking
    International Journal For Technological Research In Engineering Volume 3, Issue 3, November-2015 ISSN (Online): 2347 - 4718 JAVA NETWORKING Puneet Gulati Dronacharya college of Engineering, Gurgaon ABSTRACT: The ascent of server-side Java applications is gets a request and produces a Response focused around that one of the most recent and most energizing patterns in Java request. The fundamental Servlet package characterizes Java programming. Java servlets are a key segment of server- objects to represent to servlet requests and reactions, and side Java improvement. A servlet is a little, pluggable objects to reflect the servlet's design parameters and expansion to a server that improves the server's usefulness. execution environment. The package "javax.servlet.http" Servlets permit engineers to amplify and tweak any Java- characterizes HTTP-particular subclasses of the generic empowered server— a web server, a mail server, an servlet components, including session management objects application server, or any custom server—with a heretofore that track different requests and reactions between the web obscure level of versatility, adaptability, and server and a client. Servlets may be packaged in a WAR straightforwardness. This paper additionally incorporates document as a web application. Servlets can be generated the life cycle of servlet. The applet -servlet cooperation is consequently from Java Server Pages (JSP) by the Javaserver depicted by two systems, Http Connection and Socket Pages compiler. The contrast in between of servlets and JSP Connection. Finally it incorporates different systems for is that servlets regularly embed HTML inside Java code, server debugging. while JSPs embed Java code in HTML. While the immediate utilization of servlets to produce HTML (as indicated in the I.
    [Show full text]
  • The Sun Web Developer Pack Tutorial, a Tutorial That Covers Emerging Web Technologies Like Ajax, REST Web Services, and Scripting Language-Based Web Applications
    The SunWeb Developer Pack Tutorial Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. Part No: 820–2133 May 2007 Copyright 2007 Sun Microsystems, Inc. 4150 Network Circle, Santa Clara, CA 95054 U.S.A. All rights reserved. Sun Microsystems, Inc. has intellectual property rights relating to technology embodied in the product that is described in this document. In particular, and without limitation, these intellectual property rights may include one or more U.S. patents or pending patent applications in the U.S. and in other countries. U.S. Government Rights – Commercial software. Government users are subject to the Sun Microsystems, Inc. standard license agreement and applicable provisions of the FAR and its supplements. This distribution may include materials developed by third parties. Parts of the product may be derived from Berkeley BSD systems, licensed from the University of California. UNIX is a registered trademark in the U.S. and other countries, exclusively licensed through X/Open Company, Ltd. Sun, Sun Microsystems, the Sun logo, the Solaris logo, the Java Coffee Cup logo, docs.sun.com, Java, and Solaris are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. in the U.S. and other countries. Products bearing SPARC trademarks are based upon an architecture developed by Sun Microsystems, Inc. The OPEN LOOK and SunTM Graphical User Interface was developed by Sun Microsystems, Inc. for its users and licensees. Sun acknowledges the pioneering efforts of Xerox in researching and developing the concept of visual or graphical user interfaces for the computer industry.
    [Show full text]
  • Client-Server Web Apps with Javascript and Java
    Client-Server Web Apps with JavaScript and Java Casimir Saternos Client-Server Web Apps with JavaScript and Java by Casimir Saternos Copyright © 2014 EzGraphs, LLC. All rights reserved. Printed in the United States of America. Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472. O’Reilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (http://my.safaribooksonline.com). For more information, contact our corporate/ institutional sales department: 800-998-9938 or [email protected]. Editors: Simon St. Laurent and Allyson MacDonald Indexer: Judith McConville Production Editor: Kristen Brown Cover Designer: Karen Montgomery Copyeditor: Gillian McGarvey Interior Designer: David Futato Proofreader: Amanda Kersey Illustrator: Rebecca Demarest April 2014: First Edition Revision History for the First Edition: 2014-03-27: First release See http://oreilly.com/catalog/errata.csp?isbn=9781449369330 for release details. Nutshell Handbook, the Nutshell Handbook logo, and the O’Reilly logo are registered trademarks of O’Reilly Media, Inc. Client-Server Web Apps with JavaScript and Java, the image of a large Indian civet, and related trade dress are trademarks of O’Reilly Media, Inc. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and O’Reilly Media, Inc. was aware of a trademark claim, the designations have been printed in caps or initial caps. While every precaution has been taken in the preparation of this book, the publisher and author assume no responsibility for errors or omissions, or for damages resulting from the use of the information contained herein.
    [Show full text]