Skip to main content the Week in Review - July 3, 2010

Posted by editor on July 4, 2010 at 11:01 AM PDT

Why not keep the Java Bus at the top of "the Week in Review" for one more week? The bus travelled to Washingon, DC and then on to Charlottesville, VA this past week. Oracle Technology Network Chief Justin Kestelyn hopped on the bus in Providence, RI, and took the trip to D.C. In the picture, you see Roger Brinkley, of the Mobile and Embedded community, demonstrating Java-powered Sun Spot devices. Atlanta, GA is the next stop on the Road Trip (July 8).

If you didn't get a chance to visit on a daily basis in the past week, read on, and you'll find all of the week's Java Today news items, a selection of blog posts, and the old and new spotlights and polls.

This week's index:

Conferences, JUG Meetings

Last week's Spotlight was my blog post Notes and Pics from the Java Road Trip Stop at Burlington, MA, USA:

The Java Road Trip spent an afternoon and evening in the parking lot at Oracle's Burlington, Massachusetts, USA office on Thursday, June 24. I had been working at the data center where I do most of my programming, and I pulled in beneath noisy skies, my car splashing through the puddles, as I strained to read the signs that identified each building and parking lot. Finally, I was in the right parking lot, and I saw the bus...

Last week's poll was The "Java Road Trip" is happening now in the USA. Should a world-wide "Java Jet Trip" follow? 174 votes were cast, with just under half of the voters thinking a global "Java Jet Trip" would be a good thing. Here are the final poll results:

  • 85 votes (49 %) - Yes, why should only the USA have this type of Java community event?
  • 28 votes (16 %) - A better plan is for individual countries to organize their own national Java Road Trips
  • 37 votes (21 %) - No, these trips aren't worth the effort and expense
  • 21 votes (12 %) - I don't know
  • 3 votes (2 %) - Other

Paul Sandoz posted his JavaOne session schedule:

All done in the first half of the week (unless a repeat is requested), i like that :-) D#: S313265; Title: Advanced Java API for RESTful Web Services (JAX-RS); Track: Enterprise Service Architectures and the Cloud; Date: 20-SEP-10; Time: 13:00 - 14:00; Venue: Hilton San Francisco; Room: Golden Gate 6/7 ...

This week's new Spotlight is Justin Kestelyn's post Of Buses, Surfboards, and Communities:

Me and other members of the team, Vikki and Todd, specifically, had a blast at ODTUG's Kaleidoscope conference earlier this week. That group knows how to run one, and the results show it: attendance was up 25% this year. Kudos to the organizers. (Incidentally, Oracle ACE Director Edward Roske is the conf chair for 2011, so ACE Directors will continue to have a strong presence there.) As always, it was good to see the usual suspects. What's more, we got a visit from the Java Bus (#javaroadtrip), which parked right next to the conference space at the hotel...

John Ferguson Smart announced that he'll be Talking in London: Zen and the art of build script maintenance -

Next week (on July 8) I'll be giving a talk in London for the folks at Skills Matter, on the much-neglected topic of build script maintenance: Build scripts are an essential art in any software project. And yet they are so often fragile, brittle and unportable things, hard to understand and harder to maintain. In this talk, we cover what constitutes a good build script, and look at a few of the...

JavaEE, GlassFish

Arun Gupta presented TOTD #142: GlassFish 3.1 - SSH Provisioning and Start/Stop instance/cluster on local/remote machines: GlassFish 3.1 Milestone 2 enables SSH provisioning that allows you to create, start, stop, and delete a cluster spanning multiple instances on local and remote machines from the Domain Administration Server (DAS). This Tip Of The Day (TOTD) builds upon TOTD #141 and explains how you can create such a cluster on Amazon EC2 with Ubuntu 10.04. Carla also blogged about a similar scenario here. The cluster topology created is shown below...

The JavaOne Conference Blog is Kicking it Up A Notch with a Java Persistence API Quiz:

We know the last quiz was not the hardest one, but we wanted to start things off slow.  Now we are digging a bit deeper and have a list of questions around the Java Persistence API. Answer in the comment section below.  If all your answers are correct we'll list you in the next quiz post as a "Java Guru." Good Luck!!! ...

Eduardo Pelegri-Llopart provided an update on More GlassFish 3.1 Progress - M2 and Brown Bags:

Summer is here (and so is the World Cup), but the traffic on the GlassFish aliases is going up as we continue to move towards GlassFish 3.1. Last week was Milestone 2 which included several demos: SSH-based cluster management, Deployment and WebSockets (scripts only so far, screencasts on the way).  See Carla's post on creating and starting instances on remote hosts and also Arun's detailed TOTDs based on M2: #141: Running on Ubuntu AMI on Amazon EC2  and #142: SSH Provisioning and Start/Stop Instance/Clusters. Also, we have restarted the Brown Bags for the development team (we did a few back in 2007)...

Alexis Moussine-Pouchkine presented GlassFish 3.1 - Milestone 2 is out (more screencasts)

The pace is good - Milestone 2 of GlassFish Open Source Edition (see roadmap) 3.1 is out (check out TheAquarium post).
Engineering details are here and you can get the bits from (glassfish-3.1-b06.*...

Julien Dubois wrote a new Sun Developer Network article, Part 1: Introduction to Jersey—a Standard, Open Source REST Implementation:

This article is part 1 of a four-part series. It briefly introduces basic Representational State Transfer (REST) principles, and then quickly leaves theory in order to build a real-life sample application. We will use the new Java Platform, Enterprise Edition (Java EE) 6 standard to create a classical JavaServer Faces application, and we will study why this application does not follow the REST principles. Using NetBeans, we will then add a second, Jersey-based view on top of our application, which will run in parallel with the JavaServer Faces front end. We will then compare both approaches to determine their pros and cons...

Cay Horstmann posted JSF and Power Windows:

In one of my previous blog, I provided some preliminary notes about running CAFE apps on top of Oracle Converged Communications Server (OCCAS) which covered two party call and voice conference. Now that we have MSRP support in CAFE for doing session mode IM, large file transfers, etc., which apparently works in OCCAS, it may be worth sharing a quick note on how to enable/use it in OCCAS. For...

Tools, IDEs, etc.

Hudson Labs reported on a Digg Technical Talk:

Recently our fearless leader, Kohsuke Kawaguchi, was invited by the nice folks over at Digg to give a tech talk about continuous integration and automated testing. The Digg engineering team is full of believers in continuous integration, including our very own Andrew Bayer (abayer). Being big users of the Sauce Labs service to drive their vast Selenium test suite, the house was packed with Selenium hackers/users and Hudson users, the stage was set for Kohsuke to give a great presentation...

At JavaLobby, James Sugrue talked about My Latest Refcard: Apache Ant :

Today DZone are launching my latest refcard where I cover Apache Ant. The purpose of the card is to be a pure reference for the tasks available. This was an interesting refcard to write as I have been using Ant for so long, that I took the range of functions that it can perform for granted. While I'm sure a lot of you have moved on from Ant, it's still a widely used technology in a lot of software development organisations. It's present in all Java IDEs, and I still use it in my day job...

The Java Tools Community published JavaTools Community Newsletter - Issue 215:

A new edition of the newsletter is available, with news, new projects and tips! If you want to receive the newsletter by email, please subscribe the announcements mailing list - or read the current issue here.

Hudson Labs reported on the 11th International Free Software Forum in Brazil

Last week, friend-of-Hudson Leandro Nunes sent the following message to the users mailing list regarding his upcoming talk on continuous integration and Hudson: "Next month I will present a talk about Hudson in the 11th International Free Software Forum (FISL 11), held in Porto Alegre Brazil (detailed time and date of the talk are not yet scheduled so)." FISL 11 is one of the biggest free software events in Latin America and will quite literally attract thousands of free software users, hackers, and enthusiasts...

On JavaLobby, James Sugrue announced an opportunity to Win a Free T-shirt: Who Are The Heroes of Java Data Persistence?

When Java started out, one of the big features that it offered was JDBC, providing a database independent way for Java developers to use relational databases. We've moved on a lot since then with the Java Persistence API (JPA), Hibernate and embedded databases. As with any technological movement, the success of data persistence in Java is down to a number of people...

Geertjan Wielenga posted How to Centralize the Management of NetBeans Platform Actions (Part 1):

When you use the Window wizard in the IDE to create a new TopComponent, you'll find an Action that looks something like this, registered in your layer.xml file, without any Java source file for the Action class being created in your module...

Geertjan then continued the series with How to Centralize the Management of NetBeans Platform Actions (Part 2):

Let's say we have a general TopComponent, which we want to share between multiple different modules. I.e., each module will provide its own Action. When the Action is invoked, e.g., from a menu item, a JPanel provided by the module that provides the Action will be added to the TopComponent, once the previous content in the TopComponent has been removed. Creating a generic Action providing the above functionality, following Jesse's corrections in the comment to yesterday's blog entry, you would do the following...

Platforms, Frameworks

Adam Bien noted Java FX CSS Reference Available:

The appearance of UI-Controls in Java FX can be either configured programmatically, or with CSS. See this comprehensive CSS reference. Hopefully it will be distributed with the official SDK doc in the next release...

Kirill Grouchnikov described the New Office Black 2007 skin in Substance 6.1:

The latest 6.1dev drop of Substance look-and-feel library (code named Trinidad) completes the collection of skins that can be used on the Flamingo ribbon component by adding Office Black 2007 skin to the existing Office Silver 2007 and Office Blue 2007 skins. Here is how the ribbon looks under Office Black 2007 skin...

Geertjan Wielenga posted Exploring Serena Dimensions Support in NetBeans IDE 6.9:

Serena Dimensions support in NetBeans IDE, would it be similar to Subversion and Mercurial, as follows? The above is based on the skeleton versioning support plugin from here:

On, Cameron McKenzie pointed us to two Hibernate tutorials in Hibernate 3.5 Without Hibernate? Using Hibernate Solely as the JPA Provider:

There was a bit of a backlash when the last tutorial on JPA and Hibernate 3.5 was posted here at Why would we use the Hiberante API instead of just using the Java Persistence API, and thus shield ourselves from the underlying implementation? Well, the reason was simple. We wanted to demonstrate both approaches so you could compare them side by side! ...

Srikanth Shenoy presented Effective JavaFX Architecture Part 1:

Effective JavaFX architecture is not an easy task. Designing testable JavaFX applications that are beautiful inside-out requires serious thought and some experience. Or you could read this blog series :-)


Shai Almog talked about the Ginga-J Approval Process:

As you may know the Ginga-J specification for DTV (Digital Television) is becoming a national standard in Brazil by ABNT. Just in case you don't remember Ginga-J uses LWUIT for its component UI layer. The specification is now in the public comments phase, looking for feedback from the community/public. If you would like to see Ginga-J become a finalized standard for ABNT you can vote for that matter by...


On DeveloperWorks, Ted Neward presented 5 things you didn't know about ... Java performance monitoring, Part 1:

Blaming bad code (or bad code monkeys) won't help you find performance bottlenecks and improve the speed of your Java™ applications, and neither will guessing. Ted Neward directs your attention to tools for Java performance monitoring, starting with five tips for using Java 5's built-in profiler, JConsole, to collect and analyze performance data.

Tor Norbye advised Don't Use Implicit Return Types:

JavaFX, like Scala, is a fully statically typed language. However, unlike Java, it allows you to omit type declarations in many places, since it can infer it. Coupled with the fact that you can use expressions as statements, and that the last expression in a function will be the return value, this lets you write really simple and clear code...

Cay Horstmann presented The Horstmann Brace Style:

Now here's a topic on which everybody has an opinion—brace styles. As it happens, I have a brace style to my name, but I gave up using it because (1) other coders found it too weird and (2) no tools supported it. Until now, that is. Jim Pattee released a new version of Artistic Style, his excellent code formatter, that supports my brace style. Should I go back to it, or is it still too weird?

Alois Cochard invited us to Bring Your Code: An algorithm for index translation:

Here is a little code challenge ! I'm actually working on a text-mining/semantic web application focused (for the moment) on biomedical informations and developed in Java. We are using external tools for text-mining analysis and unfortunatly theses tools don't handle HTML pretty well ... If we send raw HTML to the text-mining service, he simply break. So we must convert HTML to plain-text before processing text, and because the tools return identified words by giving their positions, we must translate theses position (or indexes) to find corresponding word in the original HTML. I created a simply implementation and posted it on ... can you make it better ?

Open Source Projects

Josh Marinacci talked about the new open source XML Utility Library he's developed:

As part of some open source stuff I've been doing on the side I've had to generate and parse a lot of XML. I like working with the DOM because it's tree structure cleanly matches my needs, but the W3C API is *so* cumbersome. The DOM was designed to be implemented in any language, not just clean OO languages like Java, so any code using it will work but be ugly. After considering a few other XML libraries I decided to write a new one that would work with modern Java 5 language features like generics, enhanced for-each, and varargs. This library is super tiny because it simply wraps the standard javax.xml libraries in the JRE, but gives you a much nicer interface to work with. Here's how to use it (or download it here)...

Fabrizio Giudici asked What's the meaning of "Open Source" for the man in the street?

In the recent weeks I've been surprised by how I received related inputs, from different sources and their perspectives, about the same problem. For instance, two weeks ago, I read an interview by Simon Phipps about the future of OSI an I was hit by this passage: increasing consumer awareness of open source and the four freedoms (beyond the code and the geeks); Exactly the same day (cool) I...

This week's new poll was stimulated by Fabrizio's post: What does the average non-programmer think about Open Source Software? The poll will be open for the next week.


Ahmed Hashim blogged about a New Cool feature from "My Boss should offer me that course": is a website for online exams and distance/coached e-learning. I love it! and encouraging all my friends to visit it. A new feature "I believe it is new" has been launched to help shy people who can't request training from their managers :-)

Subscriptions and Archives: You can subscribe to this blog using the Editor's Blog Feed. You can also subscribe to the Java Today RSS feed and the blogs feed. You can find historical archives of what has appeared the front page of in the home page archive.

-- Kevin Farnham
Twitter: @kevin_farnham