Ajax Programming

Ajax (Asynchronous JavaScript and XML) is a browser-based technology for creating highly interactive Web applications by updating parts of a Web page with new data without reloading the whole page. There is no formal definition of Ajax, but using XMLHttpRequest/JavaScript has become the dominant Ajax technology. The course starts with an introduction to using XMLHttpRequest and a brief introduction to JavaScript fundamentals. It includes in-depth coverage of programming with Ajax to send/retrieve data to/from a server, updating a Web page with JavaScript, and using CSS to modify the look of a Web page. There is also detailed coverage of how to handle Ajax requests using Servlets/JSP and Java Web applications and how to use frameworks, both client side JavaScript and server side Java. This course is hands on with labs to reinforce all the important concepts. It will enable you to build working Ajax applications, and give you an understanding of the important concepts and technology in a very short time.

Duration : 30 Hrs | 14 Days | 2 Weeks

Program Contents

Web Applications
  • The World Wide Web
  • HTML
  • Web Servers
  • HTTP
  • Dynamic Web Pages
  • CGI
  • Java Web Technologies
  • Servlets
  • JSP
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
  • Framework Overview
  • No Need to Reinvent the Wheel
  • Capabilities of Client Side JavaScript Libraries
  • General Library Capabilities
  • Some Client Side JavaScript Libraries
  • Prototype Overview
  • About Prototype
  • Utility methods and DOM Extensions
  • Utility methods of Element Class
  • The $() Utility Function
  • Using $ and the DOM Extensions
  • Prototype Ajax Support
  • Ajax.Request
  • Ajax.Request - Additional Options
  • Ajax.Updater
  • Other Prototype Capabilities
  • Much More Capability
  • script.aculo.us Overview
  • Using script.aculo.us
  • The Scriptaculous Autocompleter
  • Other Frameworks and Libraries
  • Some Well Known Frameworks
  • Dojo Functionality
  • dojo.xhr Functions
  • Using dojo.xhrGet()
  • Dojo.xhrGet Error Handling
  • Some Issues with Dojo
  • Yahoo User Interface Toolkit (YUI)
  • The YUI Dom Class
  • YUI and Ajax
  • TabView and TreeView
  • Rich Text Editor and Calendar Control
  • Other YUI Capabilities
  • The Google Ajax Search API
  • Google Search API Code
  • Google Search Page Display
  • Much More Capability
  • Google Maps API
  • Maps API Display
  • Additional Google Maps API Capability
Cascading Style Sheets
  • Issues with Formatting in HTML
  • Cascading Style Sheets (CSS)
  • Declaring Style Information
  • Style Sheets
  • Using Style Sheets
  • Resulting Display
  • The class Selector
  • Descendant Selectors
  • ID Selectors
  • Display and Visibility Style Properties
  • Other Style Properties
  • Scripting Styles
  • Scripting Classes
  • The 'Cascading' in CSS
JSON (JavaScript Object Notation)
  • 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
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 - /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
  • 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, and 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
Audience :
  • Programmers who want to learn Ajax Programming for Web Applications Development in Java
  • Students who want to learn Ajax funcationality for Java Web Programming Skils
  • Professionals looking to include interactive features in their web applications
Pre-requisites :
  • Core Java Fundamentals
  • Java Servlets, JSP
  • XML
  • Javascript Basics


Apply now at training@providenceconsulting.in

Next Steps

Find Talent Gaps

Find Talent Gaps Understand your
Java Talent
Risks within
60 minutes.
Contact us today
for a free
Talent Gap Assessment.

Certify Your Skills

Find Talent Gaps Providence's Certification
Program helps
you develop,
practice and test the
technology skills required
to dazzle in the IT arena.

Already Providence Trained ?

You can always take the
fast track to certification.

Stay in Touch

we are Social geeks