JavaOne + You == Plague

I was surprised when the following email came through my inbox last night.

URGENT! PUBLIC HEALTH ADVISORY FROM JAVAONE TEAM

*The JavaOne conference team has been notified by the San Francisco Department of Public Health about an identified outbreak of a virus in the San Francisco area. Testing is still underway to identify the specific virus in question, but they believe it to be the Norovirus, a common cause of the “stomach flu”, which can cause temporary flu-like symptoms for up to 48 hours. Part of the San Francisco area impacted includes the Moscone Center, the site of the JavaOne conference which is being held this week. We are working with the appropriate San Francisco Department of Public Health and Moscone representatives to mitigate the impact this will have on the conference and steps are being taken overnight to disinfect the facility. We have not received any indication that the show should end early, so will have the full schedule of events on Friday as planned. We hope to see you then.
*

Fortunately it hasn’t affected me (knock on wood) but the colleague I came down with is out of commission. Looks like it got Crazy Bob got hit too.

Open-source Web-based Code Review Tool: Rietveld

Guido van Rossum, of Python fame, has recently released a Django-based application that enables web-based code reviews… Rietveld.

It supports any language and currently can hook into Subversion repositories. You can see it running on Google AppEngine. Check it out!

Personally, I’m a big fan of Atlassian Crucible and have quickly come to realize the benefits of doing both on-line (in person) and off-line (web-based) code reviews.

Porting a Swing App from Java5 to Java6

We’ve got a fairly significant Swing application that we couldn’t port to Java6 until Apple released a compatible JVM. Fortunately that finally happened last week.

I’m down at JavaOne this week and was motivated to take a stab at resolving the couple dozen compilation problems and get things running.

It really wasn’t too difficult. The most annoying changes I had to deal with concerned our usage of old versions of the SwingWorker and JDIC classes. They have now been integrated into the platform with slightly different interfaces and aren’t source-level compatible with their predecessors.

I took a stab at swapping in a couple of new L&Fs, mainly Nimbus and Substance. As far as Nimbus goes, the build I grab’d from SwingLabs seemed to have a couple of problems dealing with custom UIs (a NPE attempting to replace the default SplitPaneUII). I didn’t see a build of the Java6 Update N available for the Mac so I couldn’t check to see if the problems I was seeing have been fixed. The new button UIs are definitely an improvement but I’m not quite sure how I feel about the scroll bars.

Substance was more or less a drop-in replacement that worked out of the box. The only problems I had was when I tried to apply particular themes or skins. Depending on

UIManager.setLookAndFeel(new SubstanceBusinessLookAndFeel()); BAD

SubstanceLookAndFeel.setSkin(new MistSilverSkin()); GOOD

*UIManager.setLookAndFeel(new SubstanceLookAndFeel()); *

The former resulted in ClassCastExceptions between an internal Apple Aqua panel and a Substance panel. I suspect it just hasn’t been tested extensively with the Apple JVM.