| Day
3: Tack A
AJAX with JSF
This
session is a perfect follow-on to two days Of JSF, where
you will understand why AJAX is the great match for
JSF. You will learn how to add AJAX functionality to
JSF applications to deliver rich enterprise Internet
applications without the tedious task of writing any
JavaScript. You will comprehend various approaches to
using AJAX with JSF. In the lab, you will build and
test numerous AJAX/JSF examples using an open source
framework called Ajax4jsf. You will explore this popular
framework and learn how to effectively add AJAX capability
seamlessly to JSF applications without any JavaScript
coding. At the completion of this session, you will
posses the knowledge and skills to build dynamic JSF
application with AJAX.
Overview
of AJAX
- Why
use it?
- When
to use it?
- Traditional
Web applications
- AJAX
Web applications (Web 2.0/Enterprise 2.0)
- AJAX
technologies: JavaScript, XMLHTTPRequest, DOM, CSS
Overview
of AJAX Toolkits
- Sarissa
- Prototype
- Dojo
Toolkit
- DWR
- Other
Introduction
to Ajax4jsf
- What
is Ajax4jsf?
- Architecture
overview
- Ajax4jsf
components
Lab: Implement
Ajax4jsf Command Components
- a4j:support
- a4j:commandLink
- a4j:commandButton
Lab: Implement
Ajax4jsf Container Components
- a4j:region
- a4j:page
- a4j:outputPanel
Lab: Implement
More Ajax4jsf Components
- a4j:ajaxListener
- a4j:actionparam
- a4j:status
- a4j:loadBundle
- a4j:mediaOutput
Other
Ajax4jsf Features
|
Day
3: Track B
AspectJ and AOP
Aspect Oriented Programming offers powerful capabilities to increase design leverage and reduce code duplication to more effectively develop systems. This session will teach you how the AspectJ language and tool support can be used to achieve these benefits today. After an introduction to the concepts and tools this talk provides practical insights into using AspectJ drawn from real-world enterprise experience. Lab exercises provide hands-on experience to move Aspects from an abstract idea to a powerful tool that can be applied in your application when you return to work. You will gain concrete experience in tools, pointcut authoring, and advice implementation to create cross-cutting functionality without code duplication. You will walk away with know-how to build more flexible, maintainable and higher quality code by using AspectJ.
Introduction to AOP
* Concepts and context
* AspectJ language and AJDT tool support
Exercise 1: Aspect Visualization in Eclipse AJDT
Tracing and Logging Application Flow: Aspects can be used to trace the flow of application control.
* Tracing to understand a new system
* Using Aspects to describe and observe application flow
* Introducing Log4J logging into application with Aspects
Exercise 2: Add Tracing and Logging Aspects to example system
* Add execution and control flow Aspects to observe running system
* Introduce Log4J logging to key points in control flow
Pointcuts, Advice, and Cross-Cutting Functionality
* Pointcuts matching over the Join point model
* Pattern matching in Pointcuts
* Exposing context in Pointcuts and Advice
* Metadata-based Pointcuts
* Advice: Before, After, and Around
Exercise 3: Add behavior to existing classes with advice
* Implement new feature by defining pointcuts and advice
Control Flow and Program Execution:
* Aspects, join points, and control flow
* clfow and cflowbelow
* Avoiding infinite recursion
Exercise 4: Extend exercise 4) to avoid repeated advice execution
Adding new elements to existing designs: AOP Inter-type Declarations
* Introducing fields and methods
* Introducing interfaces
Conclusion: AOP and AspectJ
* The State of AOP
* Spring 2.0 and AspectJ
* Use throughout development lifecycle
* Adoption Strategy
|