Author: Ralf Sternberg

The RAP team has been working hard over the last weeks and made another milestone build for RAP 2.0 available today. RAP 2.0 M3 contains a brand new event system implementation that allowed us to get rid of some old bugs and to attach listeners more precisely in the protocol. Many RAP developers will like the new Client API that provides access to client features through...

Read More

During the last weeks the RAP team has been busy lifting RAP's client-to-server communication to the JSON protocol. That was a lot of work, and we finished it just in time for Kepler M2. With this milestone, the migration to the new protocol is eventually complete. All communication uses JSON now, and no undocumented HTTP parameters are involved anymore. In RAP 1.5, we replaced the communication...

Read More

Just in time, the first service release for RAP 1.5 has been published on Friday. It adds a dozen bugfixes to RAP 1.5. We always backport fixes very carefully in order to maintain the stability of the release. Therefore, only critical or very obvious fixes have been included. So if you are running RAP 1.5, you can now safely upgrade to 1.5.1. The service release is...

Read More

In Java, every object has a method hashCode that is simple to understand but still it's sometimes forgotten or misused. Here are three things to keep in mind to avoid the common pitfalls. An object's hash code allows algorithms and data structures to put objects into compartments, just like letter types in a printer's type case. The printer puts all “A” types into the compartment for...

Read More

Update: It turned out that there is already a solution to the problem described here. The bundle org.eclipse.equinox.supplement exports the packages needed by equinox.common. This bundle is available from https://download.eclipse.org/equinox/. If you want to run Eclipse databinding, simply inlude this bundle and org.eclipse.equinox.common and you're set. You can disregard the solution explained below. Thanks Pascal Rapicault for the pointer. Eclipse databinding is separated into a core...

Read More

Eclipse 4 is the new platform for application development in Eclipse. We already succeeded to run e4 applications on RAP two years ago, but then we got sidetracked by other efforts. Now that Eclipse 4.2 has become the primary development stream in Juno, it's time to have another look at the topic. Last Friday I met with Lars Vogel, author of the first book on...

Read More

Composite repositories make it easy to maintain different versions of a software in a single repository. The idea is to have one public p2 repository that delegates to a number of child repositories. Once you have a new build, you can easily add it to the composite repository and remove some obsolete builds. The child repositories can be anywhere, but it's simple to keep them...

Read More

RAP 1.5 includes a new API to define and start RAP applications programmatically (up to RAP 1.4, this was only possible using Eclipse extensions or web.xml properties). With this new API, RAP can also be used for leightweight applications based on OSGi, but without the entire Eclipse stack, even with other OSGi containers like Apache Felix. Also traditional web applications, that use RWT as a...

Read More