RAP Protocol, Top Eclipse Juno Feature #7

Many Eclipse projects follow a common theme of extensible platforms with exemplary tools. Eclipse projects are often designed with a high degree of extensibility in mind, allowing consumers to use the technology in ways never imagined by the original developers.  The RAP project is excellent example of this type of extensibility integrated with Eclipse.  Instead of targeting the desktop  (Rich Client Applications), RAP provides a platform on which Web-Based (Rich Ajax) applications can be built.  By simply replacing the SWT / Platform bundle with RAP, you can reuse your RCP based code-base in a web-based scenario.

When junior developers first hear about RAP their first question is often: why would I want my Eclipse IDE in a browser?  While this certainly one path you could take with RAP, it was never the objective. RAP is about reusing your exiting Eclipse / Java: 1) code-base, 2) domain knowledge, 3) developer tools, and 4) skills, in a web-based application.  Instead of hiring a separate team (with vastly different skill sets, tools, libraries, etc…) to build your web-based solution, you can reuse most of the work you’ve already done.   With Eclipse Juno, the RAP team has taken this even further by designing an open protocol which can be used to completely decouple the RAP server from the client.  The RAP Protocol is Number 7 on my Juno Top 10 List.

There are already several client side implementations of the protocol, including an open reference implementation based on HTML 5, and several developer previews for mobile devices (such as Android and iOS smartphones and tablets).

 In addition to the protocol, the team has added a number of improvements to RAP. The RAP look and feel was given a facelift:

You can now add custom HTML markup inside some widgets (like table cells):

Table table = new Table( parent, SWT.BORDER );
table.setData( RWT.MARKUP_ENABLED, Boolean.TRUE );
TableItem item = new TableItem( table, SWT.NONE );
item.setText( "Some text with markup" );

Finally, you can now run RAP without the entire Eclipse workbench, making it really easy to build web-based APIs on top of Equinox and other Eclipse technologies.

Ivan Furnadjiev, Ralf Sternberg and Tim Buschtöns are the hard-working committers behind RAP! Markus Knauer helped with the RAP transition from CVS to Git this year. Thanks guys, you make my life so much easier!

For more Eclipse Tips and Tricks (and the anual Top 10 List), why not follow me on twitter:

7 Responses to “RAP Protocol, Top Eclipse Juno Feature #7”

  1. Mark says:

    The ability to create “browser” apps in Java and reuse my RCP code is fantastic and i have been following this project for awhile. I am excited about the separation of the client and server and RAP Mobile.

  2. Mark says:

    Thanks. I just went to sign up for the Dev Preview and found out that the name and site had changed, and that i no longer needed to sign up.

  3. […] Juno will be available in 1 week, and as we move towards this release, I’m counting down the Top 10 Juno Features that I’m most excited about.  Number 6 on my list is Eclipse’s […]

  4. […] is less than 1 week to the Eclipse Juno release and I’ve been busy counting down The Top 10 Juno Features that I’m most excited about.    Over the past 10 years Eclipse has been […]

  5. […] App Integration 9. LDT & Koneki 8. Mylyn & Intent 7. RAP Protocol 6. Git 5. JDT Enhancements 4. Orion 3. Xtext / Xtend 2. Code […]

  6. Oleg Buchhammer says:

    Hello. How RAP 1.5 can be combined with eclipse SDK 4 (new model etc.)?

7 responses so far

Written by . Published in Categories: EclipseSource News, Planet Eclipse

Looking for a job?

Karlsruhe / Remote
Karlsruhe / Victoria / Remote
Karlsruhe / Victoria / Remote