From RCP to RCP/RAP – Conversion and Single-Sourcing Techniques

Elias Volanakis (Innoopract Inc.), Jordi Boehme Lopez (Innoopract Informationssysteme GmbH)

Eclipse As A Platform · Tutorial
Presentation
Monday, 10:30, 2 hours | Cypress | Download in iCal Format

7
·
8
·
9
·
10
·
11
·
12
·
13
·
14
·
15
·
16
·
17
·
18
·
19

Elias Volanakis

Jordi Boehme Lopez

The Rich Ajax Platform (RAP) is an Eclipse project for building Ajax-enabled web applications written in Java and based on plug-ins and the Eclipse development model. This enables developers to reuse their existing RCP and Java know-how for building such applications. RAP achieves this by providing a web-enabled implementation of SWT, JFace and the Workbench. One of RAPs goals is to have APIs that are as compatible as possible with the RCP code-base. This makes reusing large parts of existing RCP code for web-based RAP projects possible.

In this tutorial you will learn:

  1. how RAP compares and contrasts to RCP
  2. how to identify if your plug-ins can be reused in RAP
  3. how to refactor existing plug-ins for code reuse in RCP and RAP
  4. a range of useful techniques to close the gap between RCP and RAP and maximize code reuse

The presenters of these techniques will be sharing their experiences implementing a RCP to RAP conversion in a commercial product.

The session will be most suitable for experienced plug-in / RCP developers with a strong Java background. You should be comfortable with creating plug-ins and contributing to extension points. Previous knowledge of RAP is *not* required as we will introduce the necessary RAP concepts. However for a broader introduction to RAP we highly recommend the tutorial: "Getting started with RAP development".

Technical Prerequisites

If you wish to take part in the excercises you should have Java 5.0 (or later) installed on your laptop. We will provide an Eclipse (win32, linux-gtk-32, macosx) and source code.

Outline

Introduction

What is this tutorial about? Introduction to RAP, RCP. How do they differ? Enabling plug-in reuse: pitfalls, what to consider, how to do it.

Converting an RCP Application

What needs to change? Setting up a RAP Target. The conversion process: managing dependencies, refactoring the plug-ins, adding an entry point, launching. [LAB] Example RCP-to-RAP conversion.

Single Sourcing Techniques

Closing the gap between RCP and RAP: moving RCP-only functionality out of the way, replacing RCP-only functionality with alternatives, hiding differences between facades, [LAB] hiding API differences using an extension point, Singletons vs Session Singletons, coping with lifecycle divergence, safeguards against code breakage.

Q & A

Elias Volanakis is a Technical Lead and Eclipse expert at Innoopract, the company behind the Eclipse RAP project. He has been helping multiple projects build Eclipse-based software since 2004 and has recently worked on a commercial RAP application. He shares RAP knowledge at http://rapblog.innoopract.com

Jordi is an Eclipse developer at Innoopract. He has build several Eclipse-based tools and IDEs since 2004. At Innoopract, he is responsable for the Yoxos Eclipse Distribution tooling, content and its validation and has recently worked on commercial RAP applications.

Floor Plan

Gold sponsors

BEA logo

IBM logo

Wind River logo

Replay Solutions logo

JBoss logo

SOPERA logo

Cloudsmith logo

BIRT Exchange logo

Skyway Software logo

Oracle

BlackBerry logo

AMD logo

Silver sponsors

Sybase

Google

Genuitec

Instantiations

Teamprise

Telelogic

Innoopract

Business Objects

LynuxWorks logo

Hardware sponsor

AMD logo

Media sponsors

Extension Media

Methods and Tools

ACM

Addison-Wesley logo

SD Times logo

Open Systems Publishing

Software Test & Performance logo

SDForum

Be a Sponsor