Professional Web Development with RAP

(4 Days)

This course will teach you everything you need to use the Rich Ajax Platform (RAP) for developing web applications.

RAP is an Eclipse technology for building rich browser-based applications written in Java. It enables developers to reuse their existing Java and Eclipse know-how and provides means for sharing code between web- and desktop-applications.

Kick-start your own development efforts by attending this course and learning from our RAP experts. All our instructors are directly involved in the RAP project as committers or work on commercial applications that use RAP. This course gives you the opportunity to learn from their experience.

During this class you will incrementally develop a full RAP application. The hands-on focus and the small class format (max. 6-8 participants) ensures that you'll gain a broad understanding of Eclipse RAP and get plenty of individual support from our experts.

Course Goals

  • Understand the most common concepts Eclipse Rich Ajax Platform (RAP)
  • Apply those concepts by developing a full RAP-based application
  • Gain working knowledge of the Eclipse RAP architecture
  • Become familiar best practices developing RAP development

Target Audience

  • The training is best for Java developers who would like to benefit from Eclipse's Rich Ajax Platform (RAP) for the development of general web applications

Prerequisites

  • Strong knowledge of Java and object-oriented programming
  • Experience using the Eclipse IDE
  • Basic knowledge of design patterns and XML

Contents

  1. Introduction to RAP
    • Brief history of RAP
    • Types of applications where RAP can be used
    • Advantages of using RAP for business applications
  2. Getting Started
    • IEntryPoint as the main RAP starting point
    • Creating an empty RAP application
    • Launching the application
  3. Introduction to RWT
    • RWT history and concepts
    • RWT Container widgets (Shell, Composite, Group)
    • Other widgets (Label, Button, Text, Combo, List, Table, ...)
    • Layout managers
    • Working with events and listeners
    • Special widgets (Menus, Toolbar)
    • Standard dialogs
  4. JFace Viewers
    • Introduction to Structured Viewers
    • Using a JFace Tree Viewer
    • Tables and the Jface Table Viewer
  5. Server-Side Scopes
    • Learn about the different scopes (request-, session-, application-scope) available withing a RAP application
    • Using the RWT class to get access to life cycle management, session- and service-stores
    • Using the SessionSingletonBase to create session aware Singletons
  6. Workbench
    • The Workbench - Eclipse's UI Metaphor
    • Windowing: Window, Menu, Page, Perspective, View, Editor
    • Workbench advisor classes
    • Workbench life-cycle
    • Creating workbench elements
  7. Architectural Overview
    • Internal architecture of a RAP application (servlet container, OSGi, plug-ins, extension points)
    • Plug-in and package dependencies
    • Plug-in lifecycle
    • Versioning and naming conventions
  8. Extending the RAP Platform Runtime
    • Creating contributions and accessing the extension registry
    • RAP applications as a structured system of extension points and contributions
  9. Perspectives
    • Implementing and contributing perspectives
    • Defining perspective layout and contents
    • Adding a view to a perspective
  10. Views
    • Implementing and contributing views
    • Using JFace viewers inside views
    • Registering View Actions/Commands
  11. Editors
    • Types of Editors (form editors, multi page editors)
    • Differences between Views and Editors
    • Contributing and opening an editor
    • Implementing an editor
    • Managing the dirty state of an editor
    • Registering Editor Actions/Commands
  12. Advanced Concepts
    • Action set part associations
    • Defining own extension points
  13. RWT Custom Controls
    • Writing your own RWT custom widget in Java
    • Registering your own java-script for client-side widget representation
    • Writing your own widget adapter to synchronize the server and client states of the widget
  14. Deployment of RAP applications
    • Features and Fragments
    • Deployment options (Jetty vs WAR)
    • War Archive Creation
  15. UI customization
    • Theming
    • Branding
    • Custom window contents
  16. Experiences and Best Practices
    • Naming Conventions
    • Structuring Code
    • Functional and Load Testing
    • Performance Optimizations

Provided Training Materials

  • Personalized Training Handbook
  • CD / download with application platform and solutions to all exercises (source code)

Additional Information

  • Course Duration: four days
  • Course format: instructor led with at least 50% hands-on labs and tutorials
  • Learn better in a small group: we guarantee a maximum number of 6-8 participants per class
  • Participants must bring their own laptop with an up-to-date installation of Eclipse

Course Language

Classes at US locations are held in English. Classes in Germany are held in German. Further languages are available upon request.

Pricing

Pricing varies by location. Please refer to the registration forms below for details.

Registration and Contact

Register today to reserve your spot, by filling out the registration for your course:

Course Schedule USA

Course Schedule Germany

Unanswered questions? No matching dates? Prefer a training at your office?

We look forward to hearing from you:

North America:
Elias Volanakis
(+1) 503-552-1457
evolanakis(at)innoopract.com

Europe:
Michaela Unser
(+49) 721 664733 0
munser(at)innoopract.com

© INNOOPRACT GmbH / www.innoopract.com
Alle Rechte vorbehalten. Vervielfältigung nur mit Genehmigung der INNOOPRACT GmbH.
Alle rights reserved. Reproduction only under permission of INNOOPRACT GmbH.