Gold sponsors

Intel logo

IBM Corporation

Cisco

JBoss

Sonatype

SAP

Oracle

Silver sponsors

Blackberry

agitar

bsi logo

Microsoft

Google

Instantiations

Soyatec

Xored

amazon

Actuate

Bronze sponsors

Purple Scout

froglogic

Paremus

objectivity

Sopera

Genuitec

itemis

excelsior

Activity sponsor

eclipsesource

Media sponsors

Methods & Tools

SD Times logo

TSSJS

Be a Sponsor

Create a RCP App with Navigation and Dynamic UI Components

Ekkehard Gentz, Florian Pirchner

Making For Eclipse · Extended tutorial (180 mins)
Monday, 09:00, 3 hours | Grand Ballroom

Tags: Modeling , UI / RCP
7
·
8
·
9
·
10
·
11
·
12
·
13
·
14
·
15
·
16
·
17
·
18

Thanks to EclipseCon now we have 3 hrs instead of 2 :) So we'll have 10 minutes extra to warm-up and check installations.

This 100% hands-on tutorial is divided into 4 parts of 30 minutes. Every 30 minutes we'll switch to the next part. We provide prepared Eclipse projects for each part, so if someone hasn't finished the tasks, he/she could follow on the tutorial and study in detail later at home. Thanks to the 3hrs we'll add 10 minutes after each part for discussions and preparing the next part.

The Tutorial isn't a Modeling-only Tutorial and it's also not a Runtime-only Tutorial - we're using Eclipse Modeling to ease the way to create a RCP Application.

The RCP Application will contain

  • Navigation from EclipseRT Project Riena
  • dynamically rendered SWT Views using redView
  • and also some Equinox Declarative Services (DS) for LnF, Localization, Lookup, Search etc.

The first hour (Part 1 and 2) are focused on Eclipse Modeling:

Part 1: Development of Domain Model and Model-to-Model Transformation (M2M)

The attendees can decide from which model to start: 

  • UML2 Model with Profile
  • XSD
  • textual DSL (Xtext/EMF)

so you can choose the model you're familiar with. We'll create a small domain model and write some M2M transformations using red-open software manufactory and Xpand/Xtend.

Part 2: Create Modeling Workflow and generate RCP Prototyping App with UI

As next step we create the workflow (MWE) and generate code using red-open software manufactory (Xpand/Xtend).

Beside the code for Beans (Entity) and (Mockup -Persistence) we create EMF models for SWT Views with CRUD operations from our domain model.

These EMF - SWT Views will be used later from redView to dynamically render the views in RCP applications or to be edited with a WYSIWYG Designer Editor.


The second hour (Part 3 and 4) are focused on Eclipse Runtime / RCP / UI:

Part 3: Run the RCP Application with Navigation and UI

Now we launch a RCP Application with 

  • Riena LookAndFeel
  • Navigation
  • Equinox Declarative Services
  • redView (SWT) Business Views

We'll write some code and also start a CDO Server as a remote Repository providing all redView SWT Views..

Part 4: Change the UI Design - and HowTo do this a distributed way

While the RCP Application is running we'll change some UI-Design:

  • open the redView WYSIWYG Editor inside the IDE
  • change some elements of the Views using Drag-n-Drop
  • change some behaviour, per ex. Lookup Actions
  • see how these changes are pushed by magic live into the running RCP applications - this is cool

If there's time and WLAN is stable we'll finish the tutorial with another real-life scenario:

all attendees change their RCP application to access SWT BusinessViews from one remote Repository Server.


 

some more informations about redView are found in this submission: https://www.eclipsecon.org/submissions/2010/view_talk.php?id=1091

first time ekke and flo talked about redView at EclipseCon 2009: - in the meantime redView and red-open were tested in real projects and going Open Source (EPL) in February 2010: https://sourceforge.net/projects/redview/

to get more informations please visit http://redview.org, http://red-open.org, follow @ekkescorner at twitter or ekkes blog at http://ekkes-corner.org.


 

Prerequisites: We are using two different workspaces: one for the modeling part and one for the runtime part. Please install the latest Helios EPP packages of RCP and Modeling, also JDK 6. Our Examples are tested on Windows7, OSX 10.6.x and Ubuntu.

You should of course have some knowledge of model-driven development, EMF and Java ;-)

If you want to prepare yourself for the workshop take a look at the Eclipse projects we're working with: 

  • Equinox (Eclipse Runtime) as OSGI Framework
  • MWE (Eclipse Modeling - EMFT) as Modeling Workflow
  • Xpand/Xtend (Eclipse Modeling - M2T) to generate code and transform models
  • Riena (Eclipse Runtime) for Navigation and UI
  • redView (http://redview.org) to store SWT Views as EMF models and to dynamically render these Views in RCP
  • red-open (http://red-open.org) a software manufactory to generate code (not only) for business views
  • CDO (Eclipse Modeling) as server to have distributed access to SWT Views.

Details what to download exactly will be published one week before the conference begins, to be sure that all laptops are prepared for the ride from modeling to runtime. There's no time for installation difficulties. 


Will be heavy stuff even for 180 minutes ow, but we promise: you'll have fun :-) and don't regret any minute you spent of your valuable conference time.

ekke lives and works as an Independent Software Architect and Senior ERP Consultant in the south of germany.

ekke survived many technologies since more then 30 years- he started development in 1978 using Assembler, Cobol, ..., works with Apple PCs from the beginning and now is a fan of Eclipse, Open Source and Model-Driven-Software-Development.

ekke is Committer of the Eclipse Riena Project and in his customer projects he is using:
OSGI/Equinox, Eclipse RCP, Riena, UML2, EMF, CDO, EMFT:MWE, M2T:Xpand/Xtend and more.

together with Florian Pirchner he developed the Open Source Project redView (http://redview.org) Riena EMF Dynamic Views

If there is some time ;-) ekke likes:
- travelling as backpacker to the island of crete
- making photos of nature
- reading books, listening music...
and of course spend time with his wife and kids.

For many years I am working as an erp application developer. In my freetime i am spending a lot of hours for the development of redview, a project based on emf and riena to render dynamic views.

I guess, beeing java developer is the second best job i could imagine. Only astronaut would be better...