Skip Ribbon Commands
Skip to main content
Version HistoryVersion History

Course ID

AJAX_ITCW

Title

Ajax for Java Developers

Price

 

Duration

4 Days

Audience

 

Level

 

Delivery Method

 

Software Assurance

 

Microsoft CPE

 

Course Audience

Web developers using Ajax (about 2/3 of the course does not require Java knowledge) and Java developers who need to work with Ajax-based Web applications.

Course Objectives

 

Course Description

This is a 4-day course that covers the emerging Ajax technology, with a focus on developing Ajax applications using Java on the server side. The course starts with a fairly comprehensive coverage of basic JavaScript. The coverage includes some of the techniques for creating modules and doing Object-Oriented style programming in JavaScript, because Ajax uses JavaScript so heavily, and it's important that developers have some idea of how to write good JavaScript. 

This is not a thorough coverage of JavaScript - that is beyond the scope of the course. Students have enough so that they can write Ajax programs using JavaScript, and have some good foundations for doing it well. The course moves on to basic server side techniques for handling Ajax requests. Starting with a simple servlet, and then moving on to a Servlet/JSP combination. Then we go back to the client side to cover some of the major libraries that are in use today. Several libraries are represented, but your favorite may not be there due to time constraints. Detailed coverage of Dojo is not included because it's only just recently stabilized.

The course then moves on to more advanced techniques using JSON, XML, Direct Web Remoting, and JSF to create Ajax based Web applications. This takes the student to the next level in writing Ajax applications. Finally some general design and security issues are covered.

Course Prerequisites

Basic knowledge of HTML and JavaScript and practical Java and Servlet/JSP

programming experience.

Course Outline

1. Ajax Overview

  • What are Rich Internet Applications?
  • RIA Technologies
  • Ajax Introduction
  • What is Ajax?
  • The Ajax Difference
  • Ajax, JavaScript, DHTML and More
  • XMLHTTPRequest
  • What This Course Will Focus On

2. 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

3. XMLHTTPRequest
  • XMLHttpRequest Basics
  • More about XMLHttpRequest
  • Creating an XMLHttpRequest Object
  • Submitting a Request
  • XMLHttpRequest Properties
  • Asynchronous Requests
  • Handling an Asynchronous Response
  • The ReadyState Property
  • onreadystatechange Event Handler
  • XMLHttpRequest Methods

4. 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
  • The <C:forEACH> Tag

5. 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
  • Ajax and Events
  • JavaScript Objects and Arrays
  • Creating JavaScript Objects
  • Working 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
  • Some Issues with Dojo
  • Yahoo User Interface Toolkit (YUI)
  • The YUI Dom Class
  • A Simple Application with YUI
  • YUI and Ajax
  • TabView and TreeView
  • dwr.xml Configuration File
  • Running the Test Pages - <webapp>/dwr
  • Working with DWR
  • Including the DWR JavaScript Code
  • Using the DWR 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

11. AJAX and JSF
  • JSF Overview
  • JSF Purpose and Goals
  • JSF API
  • JSF as MVC
  • JSF Views – Facelets
  • Facelets Defined
  • JavaBean Defined
  • Managed Beans as JSF Model
  • JSF Controller Components
  • Managed Beans – Part of JSF Controller
  • faces-config.xml Details
  • FACES-CONFIG.XML Structure
  • Your First JSF Application
  • Configuring FacesServlet in web.xml
  • JSF Controller
  • JSF HelloWorld – Facelet
  • JSF HelloWorld –Viewing the Facelet
  • faces-config.xml
  • Review of Managed Beans
  • Managed Beans Lifecycle
  • Declaring a 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
  • AJAX and JSF
  • F:AJAX Details

12. 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
  • Security Summary
  • Resources

Status

Active

Technology

.NET

Category

Development

SubCategory

Advanced Programming

Details

Ajax for Java Developers

Attachments

Version: 3.0
Created at 5/5/2015 11:11 AM by Cole
Last modified at 6/29/2015 11:40 AM by GSATRAIN\Administrator