US / UK-EMEA / Contact Ask DevelopMentor a Question800.699.1932

Spring 3.0, Rich Interfaces, and the Web Training

(FW1155) 3 Day Course, $2195
 
Upcoming Classes:

What You Will Learn

Course Highlights

Course Details

Dates & Locations

The Spring framework is an application framework that provides a lightweight container that supports the creation of simple-to-complex components in a non-invasive fashion. Spring's flexibility and transparency is congruent and supportive of incremental development and testing. The framework's structure supports the layering of functionality such as persistence, transactions, view-oriented frameworks, and enterprise systems and capabilities. Spring's Aspect-Oriented Programming (AOP) framework enables developers to declaratively apply common features and capabilities across data types in a transparent fashion.


As an enabler for rich web interfaces, the Spring framework represents a significant step forward. If you want to deliver an web application within the Spring framework, you'll find this course essential.


Note that our Spring training covers the entire spectrum and is highly modularized. As such, we can customize courses to your specific needs. The following is a high-level listing of Spring topics to consider in building your customized Spring training:


  • Core Spring Framework (including Inversion of Control, Dependency Injection, and Aspect-Oriented Programming)
  • Spring and Persistence (including Spring DAOs, Transactions, and working with JDBC or Hibernate)
  • Spring Views and Rich Interfaces (working with Spring MVC, Spring WebFlow, Ajax, Struts, or JSF)
  • Spring Security (including interceptors, authentication managers, access decision managers, and filters)
  • Spring Integration (powerful framework for implementing message-based workflows)
  • Spring and Java Messaging Services (working with JMS)
  • Spring Enterprise Services (working with JNDI, Timers, JMX, and batch)
  • Spring Remoting (working with RMI, Hessian, Burlap, and HttpInvoker)
  • Spring-WS (including web service endpoints, marshalling/unmarshalling, and gateways)
  • Spring and REST (including support for RESTful services)
  • Spring and EJBs (working with various types of local and remote EJBs)
  • Spring and Testing (working with JUnit and Mock Objects)
  • SpringSource Tool Suite (covers tooling as well as use of the SpringSource's tc Server)

What You Will Learn

Course Highlights

Course Details

Dates & Locations

Students who attend Spring 3.0, Rich Interfaces, and the Web will leave the course armed with the required skills to design and implement Spring applications that effectively and transparently use various web interface tools and technologies. This course provides coverage of the concepts and practices for interacting between Spring and JSF, Struts, Web Flow, Ajax, and other components.


Working in a dynamic, lab-intensive hands-on coding environment students will learn to:

  • Work with the technologies that form the foundation for Ajax
  • Integrate Ajax into Spring to provide a rich, interactive web interface
  • Understand how to use Struts and JSF within the Spring framework
  • Use Spring's Web Flow as a framework to build interfaces for complex web applications
  • Work with HTTPUnit and Spring to facilitate unit testing in the context of the web
  • Interoperate with RESTful services from within Spring 3.0
  • Understand and work Spring Security to acquire and process authentication credentials as well as enforce authorization on enterprise resources
  • Understand how to defend Spring applications from the perspective of application security

The course provides a solid foundation in essential terminology and concepts, extended and built upon throughout the engagement. Processes and best practices are discussed and illustrated through both discussions and group activities.


Attending students will be led through a series of advanced topics comprised of integrated lectures, extensive hands-on lab exercises, group discussions and comprehensive demonstrations. Please see below for additional information about the hands-on lab work.

What You Will Learn

Course Highlights

Course Details

Dates & Locations

Session: Review of the Spring 3.0 Framework and Spring MVC
  • Spring Application Architectures
  • Spring Container
    • Managing the Container
    • Application Contexts
  • Beans as Components
    • Beans and Factories
    • XML Bean Configuration
    • Autowiring
    • Bean Lifecycle
    • Factory Beans
  • Data Handling
    • Validation
    • Type Conversion
    • Formatting
  • Spring Expression Language (SPEL)
    • Using SPEL
  • Spring Data Access Pattern
    • Spring DAO
    • DAO Implementations
  • Spring/Web Framework Architecture
  • Spring MVC
    • Spring MVC Architecture
    • Spring MVC Components
    • Spring MVC Flow
    • Dispatcher and Controllers
    • Handlers and Mapping
    • Interceptors
Session: Spring and Web Flow
  • Stateful Web Application Challenges
  • Flow-Based Web Development
  • Web Flow Components
  • Creating a Flow
  • Controllers and Executors
  • States and Variables
  • Triggering Events
  • Subflows and Substates
Session: Spring and JSF (Optional)
  • Spring/JSF Architecture
  • Integrating JSF into Spring
  • Resolving Spring bean references from JSF
  • Making Spring bean references from JSF
Session: Spring and Struts (Optional)
  • Spring/Struts Architecture
  • Integrating Struts into Spring
  • Using Spring's ActionSupport
  • Using DI with Struts
Session: Web Testing in Spring
  • Spring and Testing
  • Spring, DI, and Testing
  • Spring-Specific Testing
  • Testing Spring MVC Controllers
  • Using Mock Objects
  • Assertions and Testing Methods
Session: Spring and RESTful Services
  • RESTful Services
  • Request Mapping to Resources
    • HTTP Method to Java Method
  • URI Mapping to Parameters
  • Resolving Content Types
  • Integration into MVC
    • RequestMapping Annotation
    • PathVariable Annotation
    • Adjusting to Content Types
Session: Spring Security Framework
  • Core Security Concepts
  • Spring Security Framework
  • Spring Works Well With The Following
  • Other Spring Features
  • Other Security That Works Well With Spring
Session: Spring Security - the Web
  • Spring Security Transparent To Client
  • Run-As And After-Invocation Managers
  • Spring Security - Securing A Web Page
  • Adding Core Security To A JEE Web Site
  • The Standard Set Of Filters
  • Configuring Web.Xml
  • Spring Beans Security File
    • Spring Security Config File
    • Spring Security Extensions
  • Http Section
    • Http Auto-Config="True"
    • <Intercept-Url />
  • Pages Without Access Control
  • Using Spring Security
    • Customizing The Experience
    • Protecting Different Pages With Different Roles
    • Adding A Logout Page
    • Adding A Custom Login Page
  • Using JSP Tags To Conditionally Show Content
  • Securing Java Code
    • Security Guidance
    • Using Spring Security With Spring Beans
    • Security Within The Bean
  • User Based Vs. Role Based Security
    • User Based Security
    • Use SecurityContextholder To Get User Details
Session: Spring and Application Security
  • Application Security Overview
  • OWASP Top Ten Vulnerabilities
  • SQL Injection
  • Cross-Site Scripting (XSS)
  • Defending Applications Using Spring
  • Defending Against SQL Injection
  • Defending Against XSS
Session: Ajax Overview/Review
  • XMLHttpRequest (XHR) Mechanics
    • XMLHttpRequest Overview
    • Working with the XHR Object
    • XHR Operations and Properties
  • JavaScript Mechanics
    • JavaScript Overview
  • CSS Mechanics
    • CSS Overview
  • XML Mechanics
    • XML Overview
  • JavaScript Applied in Ajax
    • Handling Requests
  • Ajax Applications
    • Example Forms
    • Data Processing
Session: Spring and Ajax
  • Direct Web Remoting (DWR)
    • Mechanics and Communication
    • Configuring DWR
  • Spring and DWR
    • Springs and DWR
    • Configuring DWR within Spring
    • Handling Ajax Requests with DWR

What You Will Learn

Course Highlights

Course Details

Dates & Locations

Upcoming Dates & Locations

There are no upcoming scheduled engagments of this course. We can schedule an on-site event at your convenience.
Ready?
Connect
Signup for our Free Newsletter!
Latest news
Twitter Feed MORE
Got an email from a developer in Holland about my Onion Architecture blog post http://t.co/Z5DTvJob Nice to have a worldwide audience! #dm
1 day ago (details)
There is something to this statement: Why Quit? Because They Have Bigger Monitors http://t.co/9FrGETG5 #dm (via @mkennedy)
2 days ago (details)
Testimonials
  • All the content was presented in a very clear manner and we got to the important points quickly with enough context to understand the content and how it would be used. Jenny L.