Porting existing SWING GUI

We’re considering porting our large java application to Vaadin. From reading over the book of Vaadin, it is my understanding that while the coding is still done in java, all the Swing GUI framework calls need to be replaced with Vaadin UI objects. Is this correct? So the level-of-effort is similar to porting from SWING to JavaFx 7? Has anyone ported a SWING app before? Is there a porting guide that translates from JButton to Vaadin button etc? There are a lot of screens to translate including an interactive drag & drop map with movable and resizable objects with property sheets…

Porting to Vaadin would probably be somewhat less work than JavaFx (but not much less), Many of the SWING components have a counterpart in Vaadin and for them porting should be easy , use
sed or similar tool
and replace imports of the SWING component to the Vaadin component in the entire source tree.

Regarding the drag and drop map, you will probably need to do that on a html5 canvas object , check the addon repository for addons, but I do suspect you might need custom vaadin component for this, at the very least you will need some customization of existing addons…

Darrell, did you adventure into the porting from swing to vaadin? We are thinking the same for one of our applications and would be nice to hear if someone did it.

I’ve been doing Vaadin for about a year now. While it is amazing in many ways it doesn’t have the MVC “Model/View/Controller” abstract classes you are used to. AbstractTableModel for example does not exist in Vaadin.

The best way to think of Vaad from a Java Swing persepective. It is an AJAX Open Source framework that is built on top of GWT (Google Widget Toolkit) where the Java objects have stubbed out to work in the JavaScript GWT world and work with your servlet via AJAX event listener calls.

I’ve been impressed with the stability as well as the Vaadin Team. Even though it is an Open Source platform they do a great job of sharing knowledge and helping folks out.

Any Java Swing folks out there that need more info just shoot me a message. Happy to help.

This just went out recently that Java Swing folks should read: https://vaadin.com/swing