Eclipse Yoxos Services Downloads Blogs About
Home > Blogs >

Benjamin Muskalla

on May 13th, 2010Using Equinox Security in RCP and RAP

I finally had the time to care about one of my outstanding tasks – provide a tutorial and example how to use Equinox Security. While the tutorial was initially targeted for RAP users, I also added a launch config and a target definition for RCP as the code is the same for both runtimes. The tutorial will provide some hints and pointers how to setup your login procedure, like shown below:

rapsec login Using Equinox Security in RCP and RAP

After logging in (hint, hint), you’re able to inspect the currently active Subject. I made up this example to be as simple as possible to demonstrate the key concepts of Equinox Security, and not the ones from RAP/RCP.

rapsec subject Using Equinox Security in RCP and RAP

As I said, you can either choose between RAP as runtime (above) or RCP (below).

rcpsec subject Using Equinox Security in RCP and RAP

In addition to the authentication mechanism, I wrote a pretty simple LoginModule to show how to connect your authentication process to an alternative backend (eg. LDAP, Kerberos, …).

As I put the tutorial into the Eclipse wiki, I encourage everyone to extend the tutorial with hints, tricks or ideas what you can do with Equinox Security. Hope the tutorial helps to get up to speed how to use secure your RCP/RAP applications.

on Apr 27th, 2010Google Summer of Code 2010 is on!

Finally the voting process for this years Google Summer of Code is over and they announced the accepted students. I’m really happy that so many interesting proposals got trough and really looking forward to see the outcome of all the student projects.

 Google Summer of Code 2010 is on!

Here is the full list of the proposals that got accepted for 2010.
Improve Eclipse Git integration
Student: Dariusz Luksza
Mentor(s): Matthias Sohn

WAR deployment for RAP/Equinox based applications
Student: Holger Staudacher
Mentor(s): Ruediger Herrmann

Theme editor for RAP
Student: Benjamin Muskalla (IRC: benny`work)
Mentor(s): Ruediger Herrmann

Rich Editor For Wiki Markup
Student: Harshana Eranga Martin
Mentor(s): David Green

index based model compare match engine
Student: Stefan Leopold
Mentor(s): Cedric Brun

Restlet integration with Equinox
Student: Rajeev Sampath
Mentor(s): Bryan Hunt

C++ editor enhancements
Student: Tomasz Wesolowski
Mentor(s): Alena Laskavaia

DNS-SD based wide-area ECF discovery provider
Student: Markus Alexander Kuppe (IRC: lemmy)
Mentor(s): Scott Lewis

Hudson Integration for Mylyn
Student: Markus Knittig
Mentor(s): Steffen Pingel

Google Wave ECF provider
Student: Sebastian Schmidt (IRC: sebs)
Mentor(s): Mustafa Isik

Integrate GMF runtime with Mylyn task focused UI
Student: Yongming Luo
Mentor(s): Mariot Chauvin

Congratulations to all the students and a big kudos to the organizers and mentors for their choice. As every year, it is pretty difficult to dismiss so many other good proposals but there were only 11 slots available this year for Eclipse. Looking forward to a great summer!

on Apr 26th, 2010Sketch your UI

From time to time, I’m in the situation when I want to suggest a UI change or even try to come up with a completely new UI. While I love programming, it may be easier in these situations to just “sketch” the idea instead of really getting your feet wet. As many people asked me what I use for UI sketches, I thought I should share it with you – the tool is called WireframeSketcher. It’s “just” an Eclipse plugin to create sketches pretty easily. As most of the UIs in my life are SWT-based, WireframeSketcher comes with one absolutely cool feature – turn an existing dialog into a sketch. Fire up any dialog, hit the magic “Alt+Shift+F5″ and you’re done. Is it that easy? Yes – I really love it. Here is an example of the Import Wizard which I also used in my latest blog post to further modify it with my ideas.

import Sketch your UI

Not only is it easy to operate, it also has pretty good Eclipse integration and you always find the things where you expect them (eg. select and button and you can modify everything in the Properties View).

button props Sketch your UI

As Eclipse commiter, you can get a free licence of the plugin or you can buy the plugin from the author if you want to use it commercially. Either way, give it a try the next time you want to mock a new UI prototype.

on Apr 22nd, 2010Eclipse DemoCamp 2010 in Mannheim

Ever been to Mannheim? If not – this is your chance to visit this lovely city. For the Helios release, the guys behind the majug² (Mannheimer Java user Group) invite everybody to the Helios Democamp in June. And as Ian already found out: Yes, we love our DemoCamps! It’s always great to have technical discussions over a frosty beverage!

2455008482 b1def65090 Eclipse DemoCamp 2010 in Mannheim

Watertower by flamouroux

At the moment, the attendee list is still pretty empty but save yourself a seat while it’s not booked out – they only have 100 seats available. Topics this year include EGit, EclipseRT, Android and Roo. Do you think a cool topic is missing? Step up and give a demo about what you’re doing! I’m really looking forward to see more demos of how people use Eclipse as IDE or runtime.

Eclipse camp Eclipse DemoCamp 2010 in Mannheim

Hope to see you there for another great DemoCamp and ad-hoc Stammtisch!

on Apr 20th, 2010Drawing with RAP? Yup!

I have to admit, I’m a little nervous what happens with the RAP community after this post. At least for me, the last days were pretty exciting. Some days ago, Ivan from the RAP team committed the initial support for a GC (GraphicsContext) for RAP. Currently restricted to the Canvas widget, the GC provides thousands of new use cases for RAP applications. The work by Ivan and Tim is just gorgeous and will help many developers to single-source their applications with even less exceptions. In case you want to try it out in this second without reading further, just fire up the RAP Examples demo and draw something yourself :)

RAP with Canvas

Credits for the picture above goes to Holger with the aim to come up with a new RAP project logo ;) After using the GC the first time in the Examples demo, I thought about other possibilities to test the new GC. My first thought: custom widgets? Tired of writing custom widgets in JavaScript? Get your Canvas and single-source your custom widget with RCP by writing an owner-draw widget. But as it was late in the night, I decided to just reuse some existing owner-drawn widgets like those we can find in the Nebula project. After getting the PShelf widget from CVS, it was only a matter of seconds until I started my first RAP application using an owner-drawn Nebula widget:

Nebula PShelf on RAP

And I think I know what most of you are currently thinking – Draw2D, GEF and GMF on RAP? To keep it and short and simple: No! While it may be possible to single source Draw2D with the exisiting Canvas, I’m pretty sure it will not scale. The way Draw2D is implemented will cause major performance problems with the browser-side Canvas widget. As I said, it may be possible but not really preferable. For supporting Draw2D the right technology on the client-side is there. Only on the server-side we would need APIs that entirely hide the GC. Thus we could directly translate from one vector-based technology to the other.

I’m pretty excited to see how the community can profit from the new Canvas implementation. Want to try it out? Either get the current RAP runtime from CVS or wait some days until we can publish RAP M7 (which has several other cool new & noteworthy items).

on Apr 14th, 2010Revamping Eclipse Examples?

Even though I’ve been involved in the Eclipse community for around 5 years, I’m still amazed by the projects that are hosted under the Eclipse umbrella. As an “insider”, I have a pretty good overview of many projects and at least a rough picture of all the other cool stuff. While I love working with EclipseRT technologies like Equinox, RAP, EclipseLink, ECF or <insert your project here>, I always find myself in the same situation.  This stuff is awesome but do users really get the point of what’s possible? Learning a new technology is always hard, but if you want to develop enterprise-ready, scalable and vibrant platforms using Eclipse components, there are so many obstacles to overcome. You need to have at least a clue about OSGi/Equinox, Extensions and their corresponding Extension points (for each for your consumed modules) and many other things. I don’t want to say that Eclipse is too complicated (which is a topic for another post anyway), but what I would really like to see is a better way to get our future consumers up to speed. As Esther Dyson once said:

A worker’s paradise is a consumer’s hell.

With the Eclipse Examples project we wanted to provide a few exemplary projects to show how to use different projects. In theory a nice idea, but practically I don’t see that this effort was very successful. Wayne and me discussed some ideas back in 2008 but without a concrete outcome.  Thinking about this topic after EclipseCon, my current thought was to provide easy ways for our consumers to try out the bits and pieces of all the projects. What I constantly run into though, is that you need to do so many things  before you can get started, like setting up a target platform, making your examples depend on the right bundles, using the right extension points/services/etc, creating launch configurations. Many projects already helped themselves by providing examples using PDE templates. That’s the way I’d like to tell newcomers how to get started and would push this even a little further – the idea is to provide some infrastructure in the Examples project to help others setting up their examples. The projects just provide example bundles, maybe a target definition, a launch configuration and a cheatsheet or something. In the end, the user should be able to try out another Eclipse technology within 2 clicks: New Example > That technology, run!

examples wizard Revamping Eclipse Examples?

Basically PDE already provides many of these things but it’s not yet at the point I would love to see it. It’s still too complex for consumers to create target platforms (I know what I’m talking about), create their launch configs and get started with the examples. While there are still some hurdles to jump, I think our users and consumers would thank us for getting them up to speed in seconds. It should even be interesting for non-OSGi related examples as other projects thought about something like this for years. I don’t see a chance to have this ready for Helios, but I’m pretty confident that we could do something like this in the timeframe for the I… release train. Would other projects be interested in such an approach to distribute their examples? Please leave a comment on this bug if you do so to collect ideas, wishes and requirements.

on Mar 22nd, 2010EMF and RAP – what a lovely pair

During the last weeks, Kenn and I worked together to support EMF generated editors running on RAP. I’m always mesmerized by how effective such synergies can be used when people from different teams work together for a bigger goal. Kudos to Kenn for his great work in EMF by refactoring the EMF UI bundles (namely o.e.emf.ui.common and o.e.emf.ui.edit) in order to single-source them. But what does that mean for the community?
rapemf e1269224344251 EMF and RAP   what a lovely pair
Go out, grab EMF & RAP M6 from Helios, get your model ready, fire up properties view and switch “Rich Ajax Platform” to true. Hit the magic “Generate All” button and you’re done – an EMF backed RAP application.
emfrapapp 300x210 EMF and RAP   what a lovely pair
For the details, please refer to the EMF/RAP integration wiki page.
In case you want to see what else is going on in the RAP space right now, I’ll be giving a RAP 1.3 N&N talk tomorrow at EclipseCon. Hope to see you there!

on Nov 23rd, 2009EclipseRT & RAP around the world

We’re all looking forward to talk about EclipseRT, Equinox and RAP at the DemoCamps around the world. In case you want to catch us and talk about Eclipse and related topics, just join one of the DemoCamps near you. Besides many other interesting talks, we’ll mostly cover EclipseRT, RAP and p2.

Eclipse camp EclipseRT & RAP around the world

Ottawa, ON, Canada – November 24 – Jeff McAffer (EclipseRT)
Braunschweig/Hanover, Germany – November 25 – Benjamin Muskalla (RAP)
Stuttgart, Germany – November 26 – Jordi Boehme Lopez (p2)
Kaiserslautern, Germany – November 26 – Holger Staudacher (RAP)
Frankfurt, Germany – November 26 – Benjamin Muskalla (EclipseRT,RAP)
Vienna, Austria – November 30 – Chris Anisczcyk and Jeff McAffer (RAP,EclipseRT)
Karlsruhe, Germany – December 3 – Markus Knauer, Benjamin Muskalla (EclipseRT)
Hamburg, Germany – December 4 – Jochen Krause (RAP)

I’m really looking forward to see you at the DemoCamps, as always it tends to be a lot of fun!

on Nov 16th, 2009Eclipse RAP 1.3 M3 hits the road

After another 6 weeks of working hard towards the Helios Release, we’re a step closer. RAP M3 for Eclipse 3.6 is out and can be obtained from the RAP project page. Besides another 130 bugfixes and many New and Noteworthy features, here are my personal favorites of this milestone:

Non-shared SWT resources

Finally, we decided to provide constructors and a dispose mechanism for SWT resources like fonts, images, colors and cursors. While we still recommend to use the factory-based approach, this features helps a lot when single-sourcing applications that use the resource constructors in a verbose manner.

RWT Resource constructors

Yay, it compiles!

Browser History support

You now have the possibility to interact with the client-side browser history. This allows you to set “bookmarks” (eg. when switching tabs or processing a particular workflow) and the user can jump back and forward. Thanks again to Ralf Zahn from ARS who contributed this feature.

BrowserHistory Eclipse RAP 1.3 M3 hits the road

Dispose events on session timeout

We also introduced new Listener support on the Display so you’re now able to listen for Dispose events of the Display which is triggered when the session terminates. This way you don’t need to rely on servlet-specific API but rather use the same mechanism as in SWT to clean up your session. In addition you can queue runnables via Display#disposeExec that are executed once the session dies.

I hope you all enjoy the new milestone and give as feedback as fast as possible, API and feature freeze  is approaching ;-)

on Oct 8th, 2009Eclipse RAP 1.3 M2 Released

The RAP team is proud to announce the second milestone for the Helios release.

As Holger already mentioned in his blog post, part of the milestone is a new design option for RAP applications. You can either use it as is or customize it depending on your needs.

RAP Fancy Design

Together with the new fancy design, there is also a new Configuration dialog to enable and disable the view actions per stack. Additionally we added an effect called Lightbox which occurs when the dialog is open.

ConfigurationDialog Eclipse RAP 1.3 M2 Released

Another thing I’m pretty excited about – the help system. The RAP runtime doesn’t provide everything you need for the whole help system, we just provide the infrastructure to plug in any help system implementation you want. Depending on your needs you can either use a pretty simple implementation or single-source the real help system implementation (org.eclipse.help.ui) yourself (great chance to get involved by the way).

helpsystem Eclipse RAP 1.3 M2 Released

For those of you who are working a lot with tabular data, we now provide cell tooltips on the TableViewer if you use a CellLabelProvider. This enables you to provide tooltips on the fly for all of your table cells.

 Eclipse RAP 1.3 M2 Released

Looking at this milestone in numbers, we fixed 100 bugs and resolved 36 enhancements – this includes another 23 new APIs that are now available for you. We’re pretty excited about the Helios release and looking forward to the next milestone.

Be sure to check out the whole New & Noteworthy as there are much more details we added in M2!

Get Adobe Flash playerPlugin by wpburn.com wordpress themes
© EclipseSource 2008 - 2009