AJAX for Java Developers
Private Training Price: $8500 for up to 3 students*
*Additional students subject to a nominal fee
- AJAX for Java Developers Training Class Summary
-
This intensive, hands-on, four-day AJAX training class emphasizes becoming productive quickly as a Java AJAX developer. It starts with an introduction to using JavaScript and XMLHttpRequest. It includes in-depth coverage of programming with AJAX to send and retrieve data to and from a server, updating a Web page with JavaScript, and using CSS to modify the look of a Web page. The class also includes detailed coverage of how to handle AJAX requests using Servlets/JSP and Java Web applications. Generation of HTML, XML and JSON from Java, as well as the use of various other server-side AJAX techniques are covered. In addition, the class provides extensive coverage on using frameworks - both client side JavaScript and server side Java - to support the complex programming that AJAX requires.
Audience: Web developers using AJAX and Java developers who need to work with AJAX-based Web applications.
Prerequisites: Basic knowledge of HTML and JavaScript as well as practical Java and Servlet/JSP programming skills for the Java material.
Class Length: 4 days
- AJAX for Java Developers Training Class Objectives
-
- Understand the principles of interactive Web applications and how AJAX is used to create them.
- Understand how XMLHttpRequest works, and use it with JavaScript to update a Web page.
- Use Servlets/JSP to handle AJAX requests.
- Be familiar with AJAX technologies and frameworks such as Prototype, script.aculo.us, Dojo, JSON libraries, SWR (Direct Web Remoting), and GWT (Goggle Web Toolkit).
- Understand the basics of CSS and use it with AJAX to dynamically change the Web page look.
- Understand and use JSON (JavaScript Object Notation).
- Use JavaScript and DOM with AJAX to manipulate the structure of a Web page.
- Use AJAX with HTML, JSON or XML on both the client-side and server-side (Java).
- Use DWR (Direct Web Remoting) to invoke server side Java from the browser.
- Use AJAX with JSF.
- Understand issues with using AJAX technology.
- AJAX for Java Developers Training Class Detailed Outline
-
- Ajax Overview
- Rich Internet Applications
- What are Rich Internet Applications?
- RIA Technologies
- Ajax Introduction
- What is Ajax?
- The Ajax Difference
- Ajax, JavaScript, DHTML, and More
- XMLHttpRequest
- How Ajax Works
- Overview of Ajax Technologies
- JavaScript Basics
- Java Script Introduction
- What is JavaScript
- Exploring JavaScript
- JavaScript Variables
- JavaScript – Writing to the Web Page
- JavaScript PopUp Boxes
- JavaScript Functions
- External JavaScript Files
- Functions as Data
- Standard JavaScript Functions
- Accessing and Modifying HTML Elements
- A More Complex HTML Page
- Accessing Elements via the document Object
- The innerHTML Property
- XMLHttpRequest
- XMLHttpRequest Basics
- More about XMLHttpRequest
- Creating an XMLHttpRequest Object
- Submitting a Request
- XMLHttpRequest Properties
- Asynchronous Request
- Handling an Asynchronous Response
- Submitting a Request
- XMLHttpRequest Properties
- Asynchronous Request
- Handling an Asynchronous Response
- The readyState Property
- onreadystatechange Event Handler
- XMLHttpRequest Methods
- Servlets and JSP with Ajax
- Overview of Servlets
- Java EE and Web Applications
- Simple Web-centric Architecture
- Java EE Web Applications
- Web Application Structure
- Using Servlets
- A Simple HTTP Servlet
- How a Servlet Works
- The Web Archive (war) File
- Deploying Web Applications
- Servlets and Ajax
- Accessing the Servlet Using Ajax
- A Servlet Handling a Post Request
- Overview of JavaServer Pages (JSP)
- What is a JSP?
- A Very Simple JSP – simple.jsp
- JSPs Look Like HTML
- JSP Expressions
- JSPs are Really Servlets
- Lifecycle of a JSP
- Object Buckets or Scopes
- Predefined JSP Variables – Implicit Objects
- Working with <jsp:useBean>
- More <jsp:useBean>
- How a Servlet Works With a JSP
- Issues with JSP
- Custom Tags
- Custom Tags and Tag Libraries
- The JSTL
- taglib Directive in JSP
- A Servlet and JSP Cooperating
- More JavaScript and Ajax
- Browser Events
- Event Based programming
- Event Handlers
- Defined Browser Events
- Defined Events
- Form Validation
- onload and onunload Events
- Using Ajax and Events
- JavaScript Objects and Arrays
- JavaScript Objects
- Creating JavaScript Objects
- Workign with Objects and Functions
- Working with Object Properties
- Arrays in JavaScript
- Working with Arrays
- Array methods
- Objects as Arrays
- Classes in JavaScript
- javaScript Constructors
- The new Operator
- More on Constructors
- The Object Class
- The prototype Property
- Properties of the Prototype
- A More Complete Class
- Modules and Namespaces
- Utility Modules
- Client Side Frameworks
- What is JSON
- Review of JavaScript Literals
- Arrays and More Complex Objects
- JSON Details
- Creating JSON Strings in JavaScript
- Parsing JSON Strings in JavaScript
- Parsing Strings with JSON.parse()
- JSON on the Server
- Creating JSON Text on the Server
- JSONObject and JSON
- JSONArray
- Creating JSON Text from POJOs
- Creating jSON Text from Collections
- Dealing with Dates
- Custom Date Serialization
- JSONSerializer
- JSONSTringer
- Other json-lib Capabilities
- Autocomplete Example Using JSON
- An Input Field Generating Ajax Request
- Producing JSON in a Servlet
- JavaScript Code Constructing Suggestions
- Accessing the JSON Data We Want
- JavaScript Code Constructing the Suggestions
- Autocomplete at Work
- Other JSON Tools
- The JSON Universe
- 7. XML and Ajax
- XML Overview
- What is XMl?
- The Underlying Theme of XML
- JavaTunes Purchase order Document – Body
- The Document Body and Elements
- Attributes
- Working with XML
- Working with XML and Ajax
- Accessing XML with Ajax
- Working with XML Documents
- JavaTunes Purchase Order Document
- JavaTunes Order as a Dom Tree
- More About the W3C DOM
- Traversing a Document with JavaScript
- Getting Node Information
- Finding Nodes in a Document
- White Space Handling and Other Issues
- Creating XML Documents on the Server
- Producing XML with a Servlet and JSP
- The JSP Generating the XML
- Autocomplete Example Using XML
- An Input Field Generating Ajax Request
- XML Document from Servlet/JSP
- JavaScript Code Constructing the Suggestions
- Accessing the XML Nodes We Want
- Using the Suggestions
- Autocomplete at Work
- XML Versus JSON
- XML and JSON for Data Interchange
- DWR (Direct Web Remoting) and Other Technologies
- DWR Overview
- What is DWR?
- How DWR Works
- Getting Started with DWR
- web.xml Configuration for SWR
- dwr.xml Configuration File
- Running the Test Page - <webapp>/dwr
- Working with DWR
- Including the DWR JavaScript Code
- Using the SWR Proxies
- Functions with Java Object Arguments
- DWR Options
- Reverse Ajax
- Other Technologies
- JSON-RPC
- Using JSON-RPC-Java
- Google Web Tooklit (GWT)
- GWT Architecture
- Hello World with GWT
- The Generated Application
- More About GWT
- Pros/Cons of GWT
- Ajax and JSF
- JSF Overview
- JSF Purpose and Goals
- JSF API
- Using JSF
- JSF as MVC
- JSF Views
- Managed Beans as JSF Model
- Managed Beans as JSF Controller
- JSF Controller Components
- Architecture Overview
- faces-config.xml Details
- Your First JSF Application
- Configuring FacesServlet in web.xml
- JSF Controller
- Writing a Managed Bean
- A Simple Managed Bean
- faces-config.xml <managed-bean>
- Examining the Logon Form
- Linking Input Fields to Bean Properties
- Submitting the Form
- Method Binding Expressions
- Dynamic Navigation Rule
- Creating / Deploying a JSF Application
- Ajax4jsf
- Using Ajax with JSF
- Ajax4jsf
- Ajax4jsf Component Structure
- How the Ajax Filter Works
- Ajax4jsf Request Processing Flow
- Ajax4jsf Action Components
- Ajax4jsf Container Components
- RichFaces
- RichFaces Overview
- RichFaces Suggestionbox Component
- The SearchBean Managed Bean
- RichFaces Suggestionbox Display
- Design and Best Practices
- JavaScript Best Practices
- JavaScript is a Key Ajax Technology
- Object-Oriented Modular JavaScript
- Dealing with Browsers
- Separate Content, Behavior, & Presentation
- JavaScript Tips and Techniques
- Don’t Reinvent the Wheel
- Ajax Design
- Ajax is Still Evolving and Maturing
- Basic Ajax Design Principles and Patterns
- Basic Ajax Design Patterns
- Use Ajax Where Appropriate
- Network Usage Considerations
- Ajax and the Back Button – The Problem
- Ajax and the Back Button – Solutions
- User Interface Design Considerations
- Other Ajax Design Considerations
- Ajax Security Ideas
- General Security Issues for Ajax
- Basic Security Guidelines
- Scripting Vulnerabilities – Malicious Code
- The Dangers of Code Injection
- XSS – Same Origin Policy
- Same Origin Policy – The Good and the Bad
- Preventing Malicious Content
- JSON Issues
- Ajax Overview



