Vaadin 6.3-pre1 is just around the corner, so I decided to give the package a try and make an own custom component which includes a client side widget. Then I’ll do some debugging of the client side code.

Vaadin 6.3 includes GWT 2.0, so the old Vaadin 6.2 + GWT 1.7 way of using OOPHM does not work as is any more.

My environment is:
Mac OS X 10.5.8
Java 5 or 6
Firefox 3.5.8
Eclipse 3.5 Galileo
Vaadin Eclipse Plug-In (Experimental)
Tomcat 6.0.20

Step-by-step how I did it: Create workspace for SimpleComponent and create a server. Servers -> Right click -> New -> Server -> Choose: Tomcat v6.0 Server -> Next -> Browse to installation directory -> Finish Server installed.

Create a Vaadin project: File -> New -> Vaadin Project Server installed. Server installed. Server installed. Server installed. Server installed. Add project to server: Right click server -> Add and Remove… -> Add your project to Configured column -> Finish Server installed. Now you can debug your vaadin application (which still is without a custom widget). Just start server in debug mode and open http://localhost:8080/SimpleComponent in Firefox.

Server installed. Server installed.

Hopefully you can see the basic hello world application in your browser.

You can stop the Tomcat server now.

Let’s proceed to creating a custom widget. First install the plugin required by Firefox to debug client side code (GWT Development Mode. Vaadin server side code is no problem, since you can just put breakpoints in code while server runs in debug mode.) Go to and install the plugin and restart Firefox.

Then, in Eclipse, select your SimpleComponent project and go File -> New -> Other… -> Vaadin Widget Server installed. I like to put the widget in it’s own subpackage .widget Server installed. Change name to SimpleComponent -> Finish

Don’t compile the widgetset at this point yet, since it has to be done later too. Answer no to those question untill I tell you when you can compile. The compilation takes a couple of minutes, so it’s just annoying to sit and wait unnecessarily. Now the Eclipse plugin has created a widget stub, which you can add to the test application. Server installed.

It’s convenient to launch the GWT Dev Mode from Eclipse also when debugging. We can let the Vaadin plugin create this for us. Right click the SimpleApplication -> Properties -> Vaadin -> Create development mode launch -> Ok Server installed.

We have to modify the launch slightly, so choose Run -> Debug configurations… -> Java Application -> “GWT development mode for SimpleComponent” -> Arguments. In Program arguments add “-startupUrl http://localhost:8080/SimpleComponent” like in the screenshot. -> Apply -> Debug. Server installed.

GWT Development mode should now run. Click “Copy to Clipboard” button to get the URL to open in Firefox. Server installed.

Start the Tomcat server in debug mode from Eclipse. Now you should compile the widgetset.

Paste the URL from GWT Dev Mode application to Firefox. This takes a while since the plugin itself does some compiling when opening. If you now click on the “click here” text on the page (you might have to add &restartApplication to URL to get rid of cache) the client side breakpoint in Java code should be triggered. Server installed. Server installed. Server installed.

If this does not happen, just stop GWT Dev mode and Tomcat and restart first Tomcat server and GWT Dev Mode. Server installed.

Please point out if I missed something.

So, if you sit by the computer all day long you probably have developed some way to relax a couple of minutes every now and then. One of my relaxation methods is reading some web comics. Thanks to iGoogle it’s really easy to gather almost all the comics on one page and get a quick glimpse on what’s new. Since iGoogle handles RSS-feeds, you easily can read older strips if you happen to miss out on any.

So, this is my list in no particular order:

Just a quick scratch about how to access your Trac from Eclipse IDE by authenticating with certificates

  1. Make sure the root certificate is found by JVM as a trusted certificate if you have your own. Open this link and check the subject: “When I try to add my site to the task repositories, I get a Java error that says SSL Handshake failed. What do I do?”

  2. Add the following lines to eclipse.ini

  3. Setup Eclipse Mylyn plugin with the Trac connector.

  • Install Mylyn plugin
  • Add your Trac to the Task Repository view
    • Remember to use anonymous authentication, since you're using certs to login
    This is just quickly thrown together, please ask if I neglected some important details. I can try to fill in the gaps later on if necessary.

The day came when Awstats reported 300 visits / day and Google Analytics reported just a couple of visits / day. So, what’s happening? Well, not much except for the 3000 comments on There sure are lots of people interested in Eclipse variables…

I removed the spam with DB queries directly, since Drupal’s default interface for removing comments is quite ineffective for large quantities. The next day, again, the comments were flooded with spam.

I had read somewhere about Mollom which fights spam and decided to give it a try. 1. Download Mollom module for Drupal. 2. Register to Mollom website and get you keys for the site. (Unfortunately I don’t exceed the 100 legitimate posts / day and thus I’m not forced to pay for the service.) 3. Configure Mollom module in Drupal by adding the keys. Save.

Tadaa! Works like a charm! Noticed that if I write a short anonymous comment it might also get filtered as spam, but if you put some more content in the comment, at least my tests got through alright.

Statistics on my Mollom site report states that “Mollom blocked 969 spam attempts the past 5 days.” Sounds fair when comparing my Awstats and Google analytics reports from the last few days. All I have to say about that is: Thank you. Now back to my rainy vacation.

This is a great and inspiring talk about electric cars and how to deploy the infrastructure to get a working business model. The former SAP President and current electric vechicle evangelist Shai Agassi sure has the charisma and brain to give an inspiring speach!

Hope to see more talks like this in the future. It would be nice to know if anyone has given an equivalent talk about cold (Nordic) environments, where batteries are not as durable as down in the warm south.

Check it out, you’ll not regret investing 19 minutes of your life into it.

Link to the company run by Shai Agassi: Better place

Feel free to comment on the topic, since this is a really interesting area of discussion.