Training

 

 

Popular Courses

Browse Our Free Resources

  • whitepapers
  • whitepapers
  • webinars
  • blogs

Our Locations

Training Centres

Vancouver, BC
Calgary, AB
Edmonton, AB
Toronto, ON
Ottawa, ON
Montreal, QC
Hunt Valley
Columbia

locations map

Calgary

550 6th Av SW
Suite 475
Calgary, AB
T2P 0S2

Toronto

821A Bloor Street West
Toronto, ON
M6G 1M1

Vancouver

409 Granville St
Suite 902
Vancouver, BC
V6C 1T2

U.S. Office

436 York Road
Suite 1
Jenkintown, PA
19046

Other Locations

Dallas, TX
Miami, FL

Home > Training > Rational Application Developer (RAD) 7.0 > Developing Rich Web Applications with Spring 2.5 Using RAD 7.0 Training

Developing Rich Web Applications with Spring 2.5 Using RAD 7.0 Training

Course#: WA1766

This training course teaches the various technologies that can be used with Spring web applications. Spring support for various database technologies, including Hibernate is also covered. Several web application frameworks and how they integrate with Spring are covered including Spring MVC, Spring Web Flow, and Spring-JSF integration. Other requirements of web applications like using the Tiles template technology or adding dynamic PDF or spreadsheet output to the web application are covered. Finally how to use the Ajax integration of Spring JavaScript is covered.

Topics

 
  • Introduction to Hibernate
  • Hibernate and Database Support in Spring
  • Spring MVC
  • Introduction to Spring Web Flow
  • Using JSF with Spring
  • Introduction to AJAX
  • Using AJAX with Spring

What you will learn

  After completing this AJAX training course, the student should be able to:
  • Build rich Spring applications with various web frameworks and AJAX/JSF integration

Audience

 

Software Developer, Designer, Architect

Prerequisites

  Servlet/JSP Programming

Duration

  3 days.

Outline of WA1766 Developing Rich Web Applications with Spring 2.5 Using RAD 7.0 Training

1. Introduction to Hibernate

 
  • Topics
  • What is Hibernate?
  • Relational Database Technology
  • Accessing Relational Databases from Java
  • Domain Models
  • Comparing Object and Relational Models
  • Identity Modeling
  • Granularity of Objects and Tables
  • Association Modeling
  • Navigation
  • Inheritance
  • What is Object/Relational Mapping?
  • Advantages of using an ORM Tool
  • Architecture of Hibernate
  • Hibernate API
  • Extension Interfaces
  • Hibernate Configuration
  • Hibernate Mappings
  • Hibernate Properties
  • Hibernate XML Configuration Files
  • Non-Managed and Managed Environments
  • Configuration in a Non-Managed Environment
  • Configuration in a Managed Environment
  • Binding SessionFactory to JNDI
  • A Simple Example
  • Alternatives to Hibernate
  • EJB Entity Beans
  • Java Persistence API
  • Hand-Coded Persistence Using JDBC
  • Object-Oriented Databases
  • Other ORM Tools
 

2. Database Integration and Transaction Management

 
  • Topics
  • DAO Support in Spring
  • DataAccessException
  • Using DataSources
  • DAO Templates
  • DAO Templates and Callbacks
  • Using Spring with JDBC
  • Writing Data with JdbcTemplate
  • Reading Data with JdbcTemplate
  • Reading Single-Row Scalar Data
  • Spring 2.5 NamedParameterJdbcTemplate
  • ORM Tool Support in Spring
  • Hibernate
  • Hibernate Session Factory
  • Spring LocalSessionFactoryBean
  • Spring HibernateTemplate
  • Spring HibernateCallback
  • HibernateTemplate Convenience Methods
  • LocalEntityManagerFactoryBean
  • Spring JpaTemplate
  • Spring JpaCallback
  • JpaTemplate Convenience Features
  • Transactions
  • Transaction Management in Spring
  • Spring Transaction Managers
  • Programmatic Transactions
 

3. Spring MVC

 
  • Topics
  • Spring MVC
  • Spring MVC Components
  • DispatcherServlet
  • Context Loaders
  • Spring MVC Example
  • Mapping Web Requests
  • BeanNameUrlHandlerMapping
  • CommonsPathMapHandlerMapping
  • Using Multiple Handler Mappings
  • Controller Hierarchy
  • AbstractCommandController
  • SimpleFormController
  • AbstractWizardFormController
  • MultiActionController
  • ThrowawayController
  • View Resolution
  • InternalResourceViewResolver
  • BeanNameViewResolver
  • XmlViewResolver
  • ResourceBundleViewResolver
  • Using Multiple View Resolvers
  • Binding Views to Models
  • Spring 2.5 Form Tags
  • form and input Tags
  • password and hidden Tags
  • checkbox Tag
  • radiobutton Tag
  • textarea Tag
  • select Tag
  • option Tag
  • options Tag
  • errors Tag
  • Portlets
  • Spring 2.5 Portlet MVC Framework
 

4. Web Application Alternatives

 
  • Topics
  • Velocity Templates
  • Configuring Velocity in Spring
  • Velocity View Resolution
  • Using Velocity Utility Tools
  • Accessing Session/Request Attributes in Velocity
  • Binding Velocity Views to the Model
  • FreeMarker
  • Configuring FreeMarker in Spring
  • FreeMarker View Resolution
  • Accessing Session/Request Attributes in FreeMarker
  • Binding FreeMarker Views to the Model
  • Jakarta Tiles
  • Configuring Tiles in Spring
  • Tiles View Resolution
  • Tiles Component Controller
  • Creating Excel Spreadsheets
  • Creating PDF Documents
  • Creating Other Non-HTML Documents
  • Jakarta Struts
  • Using Spring with Struts
  • Configuring Spring in Struts
  • Spring-Aware Struts Actions
  • Delegate Requests to Struts Action Beans
  • DelegatingRequestProcessor
 

5. Introduction to Spring Web Flow 2

 
  • Objectives
  • What is Spring Web Flow 2?
  • Relationship to Spring and Spring MVC
  • Spring Web Flow 2 Modules
  • Integration Support
  • What is a Flow?
  • Book Hotel Flow Example
  • Book Hotel Flow Definition
  • Benefits of Spring Web Flow 2
  • Required Software
  • Configuration Steps
  • JAR File Instructions
  • Configure web.xml
  • Spring Web Flow Components
  • Sample Spring Web Flow Configuration File
  • Summary
 

6. Defining Flows

 
  • Objectives
  • Recap: What is a Flow?
  • Recap: Book Hotel Flow Example
  • Flow Definition Language
  • Skeletal Flow Definition
  • States
  • View State
  • Transitions
  • Generating Events
  • Generating Events using Submit Button
  • Generating Events using Links
  • End States
  • Actions
  • When do Actions Occur?
  • Putting it all Together
  • Introduction to Unified Expression Language
  • Unified Expression Language Functionality
  • Unified Expression Language Implicit Variables
  • Flow Instances
  • Flow Variables
  • Variable Scopes
  • Assigning and Accessing Variables
  • Flow Input
  • Binding a View to a Model
  • Summary
 

7. Using JSF with Spring

 
  • Objectives
  • JSF Integration Options
  • DelegatingVariableResolver
  • SpringBeanVariableResolver
  • SpringBeanFacesELResolver
  • Spring Bean Scopes
  • FacesContextUtils
  • JSF with Spring Web Flow
 

8. Introduction to AJAX

 
  • Objectives
  • What is AJAX?
  • A Simple Example
  • The Old Way
  • The AJAX Way
  • Two Key Aspects of AJAX
  • What are the Advantages of the AJAX Approach?
  • AJAX Technologies
  • The Basic AJAX API
  • Creating the XMLHttpRequest Object
  • The XMLHttpRequest Object Basics
  • Complete Example
  • The Timeline
  • Review Questions
  • Review Answers
 

9. Using JavaScript with Spring

 
  • Objectives
  • Spring JavaScript
  • Relationship to Dojo
  • Serving JavaScript Resources
  • Including Spring JavaScript
  • Spring JavaScript Decorations
  • Dijit ValidationTextBox Decoration
  • Spring ValidateAllDecoration
  • Handling Ajax Requests with Spring MVC
  • Handling Ajax Requests with Spring Web Flow
  • Summary
We regularly offer classes in these and other cities. Atlanta, Austin, Baltimore, Calgary, Chicago, Cleveland, Dallas, Denver, Detroit, Houston, Jacksonville, Miami, Montreal, New York City, Orlando, Ottawa, Philadelphia, Phoenix, Pittsburgh, Seattle, Toronto, Vancouver, Washington DC.
*Your name:

*Your e-mail:

*Phone:

*Company name:

Additional notes:

We have received your message. A sales representative will contact you soon.

Thank you!.

more details
buy this course
Other Details

Register for a courseware sample

It's simple, and free.

 

Thank You!

You will receive an email shortly containing a link to download the requested sample of the labs for this course.