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

Posted by editor on July 17, 2010 at 5:37 PM PDT

This week's news features and blogs covered everything from Java EE / GlassFish to Java tools, platforms, and frameworks, to programming, the JDK, mobile, and open source projects.

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 poll was When was the last time you attended a Java community event (JUG meeting, conference, etc.)? The breakdown of the 202 votes was:

  • 57% (115 votes) - Never
  • 10% (21 votes) - A long time ago
  • 9% (19 votes) - Within the past year
  • 9% (18 votes) - Within the past month
  • 8% (16 votes) - Within the past 3 years
  • 5% (11 votes) - Within the past 3 months
  • 1% (2 votes) - I don't know

The Java User Groups Community posted The Java Road Trip: Code to Coast Tour -

The Java Road Trip: Code to Coast tour is well on it's way traveling across country visiting Java User Groups on the way! Among the tour participants are distinguished Java technologists at Oracle who will demonstrate rich new Java technologies, support fellow developers at Java user group (JUG) meetings, meet with enterprise developers and consumers, and share the spirit of innovation that is the essence of Java...

Arun Gupta provided a review of the Java Road Trip 2010 - New Orleans Stop:

Java Road Trip is a tour across 20 cities in the United States showcasing Oracle's commitment to everything Java. I talked about Java EE 6 & GlassFish 3 at the New Orleans yesterday. The day started with an overcast sky, caught up with heat wave around the country (around 91 degrees), showed a reflection of super humidity (about 80%), and then ended with a thunder, lightning, and a heavy downpour while I was boarding the flight to back home. The venue of the event was University of New Orleans...

JavaEE, GlassFish

In the Aquarium, Eduardo Pelegri-Llopart said there's Still No Bait and Switch - Oracle GlassFish Server and GlassFish Server Open Source Edition:

My recent entry at
GlasFish For Business

Oracle GlassFish Server 3.0.1
interpreted by some
as indicating that Oracle had cjr/PB10143t02-bub.listhanged significantly the distribution model of GlassFish from what Sun did.
I believe I
clarified the situation
but this seems a good time to update the old
No Bait-and-Switch
post from 2007. Oracle provides two main distributions of
GlassFish Server Open Source Edition
and the
Oracle GlassFish Server,
both delivered using IPS packages...

Jitendra Kotamraju announced JAX-WS 2.2 in JDK 7 b100:

JAX-WS 2.2 is integrated into JDK 7 b100

Ed Burns announced JSF 2.1 Build 01 integrated into GlassFish nightly:

This quick entry announces that we've started work on JSF 2.1 in earnest.

Juliano Viano described Using btrace with Glassfish v3:

Btrace is a wonderful tool for debugging complex application problems. I have used it recently to debug a strange finalizer problem in an application running on Glassfish V3. Since getting it to work with v3 wasn't very straightforward, I will share my findings here in case someone else is trying to do the same... BTrace works as a JVM Agent, which means it gets the chance to modify classes...

Tools, IDEs, etc.

Hudson Labs reported on an Updated Chrome Extension:

The developer for the Hudson extension for Google Chrome, Sebastian Sanitz, emailed the users@ list today to inform the community of an update to his fantastic extension. Sebastian's extension monitors by default, but the URL and polling interval are both trivial to change. When any of the builds in the configured URL fail, you'll see a red "Fail" indicator, otherwise green "Ok"...

Hudson Labs announced that you can now Monitor Hudson from your Android:

So you've got your fancy Android cell phone and you're thinking to yourself "besides feeling smugly superior to iPhone users, what can I do with this thing?" Perhaps you should be considering using it as a phone but if that's too boring, check out the new and improved Hudson Mood widget for Android! The latest release brings support for multiple servers and fancier graphics...

Geertjan Wielenga answered the question Where to attend a presentation on the NetBeans Platform?

Where to attend a presentation on the NetBeans Platform? Well, in the coming months, here are the places to be: London. Johannesburg & Cape Town. San Francisco. What will you learn? ...

Geertjan Wielenga reported on Ouagadougou on the NetBeans Platform (Part 2)

In part 1, you can read how Skype and WebEx were used in Prague to provide a NetBeans Platform Certified Training to students in Burkina Faso. The second part of the training will be a workshop. In the workshop, the students will port one of their existing applications to the NetBeans Platform. To prepare for the workshop, I've been studying the application the students provided, i.e., a CMS in Java and Swing, with this source structure...

John Smart announced that A new chapter of the 'Continuous Integration with Hudson' book is available:

A new draft chapter of the 'Continuous Integration with Hudson' book is now available online. This new chapter discusses automated testing with hudson, including unit, integration and performance testing. You can download the PDF version on the book web page. As usual, all comments are welcome!

Platforms, Frameworks

Jean-Francois Arcand posted Friday’s Trick #3: Preventing memory leak with websocket/comet applications -

Both Websocket and/or Comet applications can easily crash your Webserver if the resources associated with the upgraded/suspended connections aren’t managed adequately. Today I will explain two pitfalls to avoid when writing asynchronous applications, independently of the transport used (WebSocket or/and Comet). An asynchronous application can crash with an out of memory (OOM) error under the following conditions...

Kirill Grouchnikov wrote about the New Mariner skin for Swing applications:

In addition to providing platform-specific key bindings, bug fixing and better integration with the Flamingo component suite, Substance 6.1 (code-named Trinidad) will introduce a new skin named Mariner. To use the new skin in your application, you have the following options: *; * UIManager.setLookAndFeel(new SubstanceGeminiLookAndFeel())...

Kirill Grouchnikov has decided that JavaFX is a train wreck:

It’s been three years since JavaFX was announced to the world, and it’s time to see how far has it gone with capturing the minds of the target audience. From the very beginning, JavaFX was positioned to be a prime environment to create compelling user interfaces (count how many times the word “rich” is used in the first sentence): JavaFX provides a unified development and deployment model for building rich client applications that integrate rich immersive media such as audio and video, graphics, rich text and web services. JavaFX allows creative developers to program in a visual context thus helping them to bring their ideas to life quicker and better...

Sergey Malenkov talked about his JavaFX Attentiveness Evaluation test:

The attentiveness evaluation test in my driving school was easier than one I developed by using JavaFX. I made it harder by adding the next value randomly.


Masoud Kalali continued a series with Introducing NIO.2 (JSR 203) Part 4: Changing File System Attributes and Permissions -

This is the 4th installment of my entries covering NIO.2. In this entry I will discuss more about what we can do with attributes and permissions. The NIO.2 lets us write the permissions and attributes of a file in addition to reading them. For example we can change the rwx permissions using the Attributes utility class and PosixFilePermission...

Joseph Darcy posted Project Coin: Updated ARM Spec:

Starting with Project Coin proposal for Automatic Resource Management (ARM)
(Google Docs version),
in consultation with Josh Bloch,
and others,
Alex and I have produced a specification for ARM blocks that is much closer to Java Language Specification (JLS) style and rigor.

The specification involves changes to the existing JLS section §14.20 "The try statement," and will eventually introduce a new subsection §14.20.3 "Execution of try-with-resources," although the specification below is not partitioned as such.

Non-normative comments about the specification text below appear inside "[]".

Differences between the new specification and the earlier Project Coin proposal for ARM are discussed after the specification...

This week's new Spotlight is the Scala team's announcement Scala 2.8.0 final:

It is finally here!! After many, many months of hard work, the Scala team is truly happy to announce the new, much-awaited stable release of Scala! The all-new Scala 2.8.0 final distribution is ready to be downloaded from our Download Page. The Scala 2.8.0 codebase includes a huge number of bug fixes with respect to 2.7.7, and an impressive amount of new features. Please read below for further details! ...

This week's new poll is Scala 2.8.0 was just released. Do you plan to download it? Voting will be open for the next week.


Dustin Marx discussed The Sleek EnumMap and EnumSet:

After having spent several years developing primarily in C++, I missed having an enum in Java until it was finally introduced with J2SE 5.  The long wait was worth it because the Java enum is much more useful and powerful than its C++ counterpart.  Although the Java enum can be used with any Java collection, its full power is best leveraged when used with the EnumMap and EnumSet...

On developerWorks, Ted Neward continued a series with 5 things you didn't know about ... Java performance monitoring, Part 2:

If it's news to you that the JDK ships with the full-featured profiler JConsole, you'll be even more surprised to learn about the five stand-alone profiling utilities introduced in this article. Find out how lightweight (and in some cases experimental) Java™ process monitoring and analysis tools can help you hone in on performance bottlenecks like thread starvation, deadlocks, and object leaks.

On, Cameron McKenzie and Paul Wheaton recently published When Design Patterns Are Evil:

Have you ever been on a project in which all of your team members have just gone through an
intense week of design pattern training? It's painful, as the project ends up
becoming some type of sadistic competition where every line of code must be implementing a pattern
out of the href="">Gang
of Four (GoF) book."Hey, this needs to be redesigned a href="">fly-weight" or "Hey, this needs to be
re-done as a bridge." The next thing you
know, a simple application is needlessly polluted with superfluous code that does little more than
demonstrate the author's ability to implement a ' href="">chain of
responsibility' or a 'composite
.' ...

Evan Summers posted Betwixt the Brackets:

So we need to convert objects into XML and back again, eg. to store some data in the database in XML format, because otherwise maybe we just gonna have too many tables and joins and what-not.

Marc Hadley considered WADL-JSON ?

Google seem to be inventing a JSON variant of WADL.


At JavaLobby, James Sugrue wrote about Google's Killer App: DIY Mobile Development For Android:

Google's release of App Inventor for Android is set to cause the biggest change in the mobile app development industry this year. All of a sudden, app consumers have the chance to become app creators. In fact, the site claims that you need no programming experience to write your apps, instead using a drag and drop approach build on the Open Blocks Java library. As well as adding in user interface related functionality, blocks exist for communicating to services such as Twitter...

Shai Almog said you can Grow Your Container With This Fool Proof Method:

Growing stuff is usually the subject filling my spambox... But into my inbox came a question from Terrence on how to grow a container.
Generally what he wanted was an effect similar to the one found on Google maps (that you can see in the video right here).
I tried to implement something like this in the most generic way possible which required a minor tweak to LWUIT (allowing us to restore the original preferred size of a component)...

Fabrizio Giudici posted a Little teaser: OpenSesame RDF store on Android -

A couple of days ago I did a massive refactoring in a couple of components of blueBill Mobile; the ones related to the management of fact sheets (e.g. bird calls with metadata) that I was talking about in a previous post. The first implementation (in the latest release) was based on RDF triples and used an ad-hoc implementation of a RDF+JSON serializer; now I can say I'm successfully running some...

Fabrizio Giudici wrote About Android, the Semantic Web and the BBC:

Yes, there is quite a bit of topics in the title, and they are all involved in the latest prototype of blueBill Mobile. In case you don't have read my previous posts on this track, I'm going to give a bit of context. I'm referring to an Android application of mine, blueBill Mobile, aimed at providing a number of field tools for birdwatchers. The core of the application is a database of species,...

Open Source Projects

Last week's Spotlight was Karl Schaefer's announcement, SwingX 1.6.1 Released

I am please to announce that SwingX has released version 1.6.1.  We hope to have the release uploaded Maven central soon. Just a quick overview of some of the issues: * Added prompt support; * Added new Highlighters and HighlighterPredicates and improved the rendering API; * Lots of JXDatePicker and JXMonthView improvements...

The Java Communications Community announced JAIN-SIP goes lightning fast:

The JAIN-SIP stack, used in a vast number of SIP proxies, application servers and clients has recently received a significant performance bump. After a series of optimizations message routing has been accelerated by close to 50%. Memory use is also down to almost half what it used to be.

The Java Communications Community announced Crystal clear calls with SIP Communicator and wideband Speex:

Ever wondered why Skype to Skype calls sound so good? Well it’s mostly because they use high quality codecs known as wideband. Contrary to regular, narrow band codecs like GSM and G.711, wideband codecs encode and send a bigger portion of the audio spectrum. This results in the remote party getting richer, higher definition audio. At SIP Communicator we have recently spent effort on modifying our audio capture and playback system so that it would fully support full band audio. We have also added support for one of the currently most popular wideband FOSS codecs: Speex, and we’ve also just configured it as the default choice in SIP Communicator initiated calls...

Karl Schaefer talked about SwingX: Using PromptSupport -

A quick overview of SwingX PromptSupport.


Jaspersoft published a new Whitepaper - Months After Oracle's Acquisition of Sun, OSS Survey Predicts Resurgence of Java and MySQL:

Despite dark predictions by many in the open source community prior to Oracle's acquisition of Sun, a new survey of open source developers and enterprise customers conducted by Jaspersoft showed most respondents think Oracle is a better steward of Java and MySQL than Sun. Survey results suggest the increased confidence could lead to a resurgence of MySQL and Java use...

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