title
Please take a moment to fill out this form. We will get back to you as soon as possible.
All fields marked with an asterisk (*) are mandatory.
AJAX for Java Developers
Course Description
Overview
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.
This course is one step in the following Learning Journey:
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
- Understand JSON (JavaScript Object Notation)
- Use JavaScript/DOM/Ajax to manipulate Web page structure
- Be familiar with Ajax technologies and frameworks such as Prototype, script.aculo.us, Dojo, and JSON libraries
- Understand the basics of CSS and use it with Ajax
- Use Ajax with HTML/JSON/XML on the client and server side
- Use Direct Web Remoting (DWR) and other RPC technologies
- Use Ajax with JSF
- Understand issues with using Ajax technology
Audience
- Web Developers using AJAX
- Java Developers who need to work with AJAX-based Web applications
Prerequisites
- Basic knowledge of HTML and JavaScript and practical Java and Servlet/JSP programming experience
Topics
- WORKSHOP OVERVIEW
- WORKSHOP OBJECTIVES
- WORKSHOP AGENDA
- COURSE PREREQUISITES
- RELEASE LEVEL
- LESSON OBJECTIVES
- WHAT ARE RICH INTERNET APPLICATIONS
- RIA TECHNOLOGIES
- DOJO FISHEYELIST WIDGET DEMO
- WHAT IS AJAX
- AJAX EXAMPLE – GOOGLE SUGGEST
- RIA/AJAX EXAMPLE – GOOGLE MAPS
- THE AJAX DIFFERENCE
- AJAX, JAVASCRIPT, DHTML AND MORE
- XMLHTTPREQUEST
- XMLHTTPREQUEST EXAMPLE
- WHAT THIS COURSE WILL FOCUS ON
- LAB 1.1 – SETTING UP THE ENVIRONMENT
- LESSON OBJECTIVES
- WHAT IS JAVASCRIPT
- EXPLORING JAVASCRIPT
- JAVASCRIPT VARIABLES
- JAVASCRIPT - WRITING TO THE WEB PAGE
- JAVASCRIPT POPUP BOXES
- LAB 2.1 – USE JAVASCRIPT IN AN HTML PAGE
- JAVASCRIPT FUNCTION OVERVIEW
- JAVASCRIPT FUNCTION EXAMPLE
- EXTERNAL JAVASCRIPT FILES
- FUNCTIONS AS DATA
- STANDARD JAVASCRIPT FUNCTIONS
- LAB 2.2 – USE JAVASCRIPT FUNCTIONS
- A MORE COMPLEX HTML PAGE
- ACCESSING ELEMENTS VIA THE DOCUMENT OBJECT
- THE INNERHTML PROPERTY
- EXAMPLE - MODIFYING AN HTML PAGE
- LAB 2.3 – ACCESSING AND MODIFYING HTML ELEMENTS
- REVIEW QUESTIONS
- LESSON SUMMARY
- LESSON OBJECTIVES
- MORE ABOUT XMLHTTPREQUEST
- CREATING AN XMLHTTPREQUEST OBJECT
- SUBMITTING A REQUEST
- XMLHTTPREQUEST PROPERTIES
- EXAMPLE – SUBMITTING A REQUEST
- RESULT – SUBMITTING A REQUEST
- LAB 3.1 – WORKING WITH XMLHTTPREQUEST
- HANDLING AN ASYNCHRONOUS RESPONSE
- THE READYSTATE PROPERTY
- ASYNCHRONOUS REQUEST EXAMPLE
- XMLHTTPREQUEST METHODS
- LAB 3.2 – AN ASYNCHRONOUS REQUEST
- REVIEW QUESTIONS
- LESSON SUMMARY
- LESSON OBJECTIVES
- 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
- EXAMPLE WEB.XML FILE
- DEPLOYING WEB APPLICATIONS
- SERVLETS AND AJAX
- ACCESSING THE SERVLET USING AJAX
- A SERVLET HANDLING A POST REQUEST
- LAB 4.1 – GENERATING AJAX DATA WITH A SERVLET
- 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
- EXAMPLE - CUSTOM TAGS IN A JSP FILE
- A SERVLET AND JSP COOPERATING
- THE <C:FOREACH> TAG
- LAB 4.2 – GENERATING AJAX DATA WITH A JSP
- REVIEW QUESTIONS
- LESSON SUMMARY
- LESSON OBJECTIVES
- EVENT BASED PROGRAMMING
- EVENT HANDLERS
- DEFINED BROWSER EVENTS
- DEFINED EVENTS
- FORM VALIDATION
- ONLOAD AND ONUNLOAD EVENTS
- USING AJAX AND EVENTS
- AJAX AND EVENTS
- LAB 5.1 – USE EVENTS TO TRIGGER AJAX
- JAVASCRIPT OBJECTS
- CREATING JAVASCRIPT OBJECTS
- WORKING WITH OBJECTS AND FUNCTIONS
- WORKING WITH OBJECT PROPERTIES
- ARRAYS IN JAVASCRIPT
- WORKING WITH ARRAYS
- ARRAY METHODS
- JOIN() EXAMPLE
- OBJECTS AS ARRAYS
- LAB 5.2 – USING OBJECTS
- 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
- AN EXAMPLE OF USING NAMESPACES
- UTILITY MODULES
- LAB 5.3 – CREATING MODULES
- REVIEW QUESTIONS
- LESSON SUMMARY
- LESSON OBJECTIVES
- NO NEED TO REINVENT THE WHEEL
- CAPABILITIES OF CLIENT SIDE JAVASCRIPT LIBRARIES
- GENERAL LIBRARY CAPABILITIES
- SOME CLIENT SIDE JAVASCRIPT LIBRARIES'
- 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
- DIRECT AJAX VS. AJAX.REQUEST EXAMPLE
- AJAX.REQUEST - ADDITIONAL OPTIONS
- AJAX.UPDATER
- OTHER PROTOTYPE CAPABILITIES
- MUCH MORE CAPABILITY
- LAB 6.1 – USING PROTOTYPE
- SCRIPT.ACULO.US
- USING SCRIPT.ACULO.US
- THE SCRIPTACULOUS AUTOCOMPLETER
- AUTOCOMPLETER EXAMPLE
- LAB 6.2 – USING THE SCRIPT.ACULO.US AJAX.AUTOCOMPLETER
- 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
- A SIMPLE APPLICATION WITH YUI
- YUI AND AJAX
- YUI AJAX EXAMPLE
- TABVIEW AND TREEVIEW
- RICH TEXT EDITOR AND CALENDAR CONTROL
- OTHER YUI CAPABILITIES
- LAB 6.3 – USING YUI.
- - THE GOOGLE AJAX SEARCH API -
- GOOGLE SEARCH API CODE
- OVERVIEW OF CODE EXAMPLE
- GOOGLE SEARCH PAGE DISPLAY
- MUCH MORE CAPABILITY
- - GOOGLE MAPS API -
- MAPS API DISPLAY
- ADDITIONAL GOOGLE MAPS API CAPABILITY
- TRAFFIC OVERLAY EXAMPLE
- REVIEW QUESTIONS
- LESSON SUMMARY
- LESSON OBJECTIVES
- 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
- LAB 7.1 – USING CSS TO MODIFY AJAX.AUTOCOMPLETER
- REVIEW QUESTIONS
- LESSON SUMMARY
- LESSON OBJECTIVES
- 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()'
- 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
- AN AUTOCOMPLETE EXAMPLE WITH JSON
- AN INPUT FIELD GENERATING AJAX REQUESTS
- PRODUCING JSON IN A SERVLET
- JAVASCRIPT CODE CONSTRUCTING SUGGESTIONS
- ACCESSING THE JSON DATA WE WANT
- JAVASCRIPT CODE CONSTRUCTING THE SUGGESTIONS
- AUTOCOMPLETE AT WORK
- THE JSON UNIVERSE
- [OPTIONAL] LAB 8.1 – GENERATING AND USING JSON DATA
- REVIEW QUESTIONS
- LESSON SUMMARY
- LESSON OBJECTIVES
- WHAT IS XML?
- BENEFITS OF XML - EXAMPLE XML DOCUMENT
- THE UNDERLYING THEME OF XML
- JAVATUNES PURCHASE ORDER DOCUMENT - BODY
- THE DOCUMENT BODY AND ELEMENTS
- ATTRIBUTES
- 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
- AN AUTOCOMPLETE EXAMPLE WITH XML
- AN INPUT FIELD GENERATING AJAX REQUESTS
- XML DOCUMENT FROM SERVLET/JSP
- JAVASCRIPT CODE CONSTRUCTING THE SUGGESTIONS
- ACCESSING THE XML NODES WE WANT
- USING THE SUGGESTIONS
- AUTOCOMPLETE AT WORK
- XML AND JSON FOR DATA INTERCHANGE
- SUMMARY
- LAB 9.1 – GENERATING AND USING XML DATA
- REVIEW QUESTIONS
- LESSON SUMMARY
- LESSON OBJECTIVES
- WHAT IS DWR?
- HOW DWR WORKS
- GETTING STARTED WITH DWR
- WEB.XML CONFIGURATION FOR DWR
- DWR.XML CONFIGURATION FILE
- RUNNING THE TEST PAGES - <WEBAPP>/DWR
- RUNNING THE TEST PAGES
- LAB 10.1 – USING THE DWR TEST PAGES
- INCLUDING THE DWR JAVASCRIPT CODE
- USING THE DWR PROXIES
- USING THE DWR PROXIES
- FUNCTIONS WITH JAVA OBJECT ARGUMENTS
- DWR OPTIONS
- REVERSE AJAX
- LAB 10.2 – USING DWR
- JSON-RPC
- USING JSON-RPC-JAVA
- - GOOGLE WEB TOOLKIT (GWT)
- GWT ARCHITECTURE
- HELLO WORLD WITH GWT
- THE GENERATED APPLICATION
- MORE ABOUT GWT
- PROS / CONS OF GWT
- REVIEW QUESTIONS
- LESSON SUMMARY
- LESSON OBJECTIVES
- 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
- ARCHITECTURE DIAGRAM
- 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
- A SIMPLE MANAGED BEAN
- MANAGED BEANS LIFECYCLE
- DECLARING A MANAGED BEAN
- SAMPLE LOGON FORM
- EXAMINING THE LOGON FORM
- LINKING INPUT FIELDS TO BEAN PROPERTIES
- SUBMITTING THE FORM
- METHOD BINDING EXPRESSIONS
- DYNAMIC NAVIGATION RULE
- CREATING / DEPLOYING A JSF APPLICATION
- JSF AND AJAX
- SIMPLE AJAX EXAMPLE
- F:AJAX DETAILS
- AJAX EXAMPLE - GROUPING
- LAB 11.1 – USING JSF AND AJAX
- LESSON OBJECTIVES
- 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 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
- 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
- - FINAL SUMMARY -
- RESOURCES
Related Courses
-
Web Development with Yahoo User Interface (YUI2) and AJAX
WDAJ-155- Duration: 3 Days
- Delivery Format: Classroom Training, Online Training
- Price: 2,100.00 USD
-
ICEFaces for AJAX Development
WDAJ-115- Duration: 4 Days
- Delivery Format: Classroom Training, Online Training
- Price: 2,800.00 USD
Self-Paced Training Info
Learn at your own pace with anytime, anywhere training
- Same in-demand topics as instructor-led public and private classes.
- Standalone learning or supplemental reinforcement.
- e-Learning content varies by course and technology.
- View the Self-Paced version of this outline and what is included in the SPVC course.
- Learn more about e-Learning
Course Added To Shopping Cart
bla
bla
bla
bla
bla
bla
Self-Paced Training Terms & Conditions
Exam Terms & Conditions
Sorry, there are no classes that meet your criteria.
Please contact us to schedule a class.
STOP! Before You Leave
Save 0% on this course!
Take advantage of our online-only offer & save 0% on any course !
Promo Code skip0 will be applied to your registration
Purchase Information
title
Please take a moment to fill out this form. We will get back to you as soon as possible.
All fields marked with an asterisk (*) are mandatory.