Skip navigation
ANNOUNCEMENT: is currently Read only due to planned upgrade until 28-Sep-2020 9:30 AM Pacific Time. Any changes made during Read only mode will be lost and will need to be re-entered when the application is back read/write.

Need You Tonight Blog

Posted by kfarnham Mar 31, 2008

Extending mini-talks into the evening

On Friday, I reported that the mini-talks sign-ups for the Community Corner at JavaOne 2008 had already filled up, and that we were going to dosomething to free up some more spots.

What we've decided to do is to keep the podcast recorders and the presentation monitor powered up Tuesday night, allowing the mini-talks to continue through the "Pavilion Reception" period that runs from 6:30 to 8:00, and which features free food and drink in between the many booths. This allows us to add three more talks, with heavy foot traffic and perhaps more background noise, so it may be the ideal time for certain types of talks or speakers (audience interactive, demo-driven, whatever... surprise us!)

We also asked some speakers and topics who had multiple spots to consolidate, so that freed up a few more spots. As of Monday morning, there are now five free spots on the schedule, so if you missed out on getting your mini-talk posted, you now have a chance. Of course, remember to follow the instructions when submitting your mini-talks, as talks without proper abstracts or speaker bios will be deleted...

...and if that happens, there will be more free spots to fill, so even if you miss out today or aren't sure you want to do a mini-talk, check back over the next few weeks.

In Java Today, the latest edition, issue 164 of the JavaTools Community Newsletter is out, with tool-related news from around the web, announcements of new projects getting started within the community, and a Tool Tip on comparing dates using Hibernate.

In TheServerSide article Performance Engineering - a Practitioner's Approach to Performance Testing, Alok Mahajan and Nikhil Sharma offer a very workable overview of the activities involved in performance testing, offering concrete definitions and filling in potential gaps.

In today's Weblogs, James Gosling blogs and posts a photo In the depths of CERN. "I was invited by some of the Java geeks who worked there. A lot of software at CERN is done in Java. One of the folks from CERN is going to be showing off some of their toys during my keynote session on the last day of JavaOne - yet another reason to come."



Say Anything Blog

Posted by kfarnham Mar 28, 2008

Remarkable turnout for the mini-talk sign-up

Well, this is a first. In previous years, we signed up some, but not all, of the JavaOne Community Corner mini-talks before the show, leaving a few spots open for late topic additions, or even drop-in speakers who missed the earlier calls for sign-ups but could put together a suitable talk during the conference.

This year, however, over a month before the conference, we found that the schedule has pretty much already filled up. In fact, to clear a little space and ensure variety, we're working with some of the people and projects who signed up for multiple talks to consolidate a little, since there's clearly more demand for speaking opportunities. In fact, I see as of this writing, someone has invented and filled a spot on Friday, which probably isn't going to work out real well, as the Pavilion closes for good on Thursday afternoon, and anyone still in that space on Friday is probably driving a forklift or cherry-picker.

Anyways, we're delighted that the interest level in the talks, and the quality of the proposed sessions, is so high, and we're going to see what we can do to free up a few more spots for prospective speakers. So if you missed out, watch the wiki. We'll announce a "round 2" when we're ready to add a few more.

Speaking of the big show, the latest Poll asks "Are you planning to attend JavaOne 2008?" Cast your vote on the front page, then visit the results page for current tallies and discussion.

In Java Today, InfoQ has posted a book excerpt and review of Diego Adrian Naya Lazo's OSWorkflow: A guide for Java developers and architects to integrating open-source Business Process Management. The OSWorkflow project, part of Open Symphony, is a flexible workflow system that can be plugged in to almost any need or existing application. The "review" is really an interviewwith the author, and the PDF excerpt is the entirety of Chapter 4, "Using OSWorkflow in your Application."

Covered earlier this month in Elliotte Rusty Harold's article, the JSR 294 superpackages spec is apparently still in play. In Module membership declarations, Alex Buckley writes, "With my JSR 294 spec lead hat on, I recently proposed a change to the superpackage model which JSR 294 defines in the service of JSR 277's deployment modules. Early feedback has been positive, but where to declare module membership in source code is an ongoing issue."

For those working with OpenJDK's Mercurial sources, Kelly O'Hair answers the question Why do I have to create a "Merge" changeset when there was nothing to merge? "For most of us old TeamWare users, and maybe other SCM users, the need for all the Mercurial "Merge" changesets (or as some people politely refer to as 'merge turds') seems confusing and messy. If the changes don't involve the same file, it can be hard to understand why you need a Merge changeset."

In today's Weblogs. Arun


Wise Up Blog

Posted by kfarnham Mar 27, 2008

Getting smarter about consumer/desktop Java

The old joke goes, "how can we miss you if you won't go away?" Popular blogger and author Chet Haase has gone off to Adobe to work on Flex, but his involvement in and contributions to desktop Java remain in full view. He attended the Java Posse Roundup earlier this month, providing a well-informed perspective to discussions of Java beyond the server. And InfoQ got him to do a long video interview at their QCon San Francisco 2007, in which he touched on Sun's major new initiatives for desktop Java.

In the course of the 22 minutes, he touches on JavaFX, the new browser plug-in for applets, and the "consumer JRE" (currently called "JDK 6 update 10", but then called "update N"):

The drivers for the Update N release which we are working hard on and should be in beta sometime soon now is mainly in the deployment space. So it's the realization that if we want to be a player in the consumer world, we actually need to fix some of the longstanding issues which we have known about but which frankly weren't that critical in the enterprise space.

So, if you're interested in desktop Java and you have a few minutes for a blast from the recent past, take a look.

Also in Java Today, Arun Gupta and Rick Palkovic have published a new SDN article, Rails Powered by the GlassFish Application Server. "This article introduces JRuby, JRuby on Rails, and the GlassFish application server. It presents a traditional Ruby-on-Rails application deployment, describes an alternative using the GlassFish application server, and explains the various options for deploying JRuby applications on GlassFish."

In the on-demand webinar Rapidly Building Desktop Applications with the NetBeans Platform, Tim Boudreau, Senior Staff Engineer at Sun Microsystems, demonstrates how easy it is to get started with the platform. You'll learn to create applications and integrate existing code into a NetBeans Platform-based application with real-world code demos, understand the design principles of modular applications, and dscover how your software and development process can benefit from this powerful platform.

Our latest Feature Article,Extending OpenPTK, the User Provisioning Toolkit. Project Open Provisioning ToolKit(OpenPTK) is as an open source user provisioning toolkit exposing APIs, web services, HTML taglibs, and JSR-168 portlets with user self-service and administration examples. OpenPTK hides the implementation differences between different user stores, allowing developers to use multiple stores with a common API. In this article, Masoud Kalali shows how to use and extend the toolkit.

John Ferguson


Nothing Is Good Enough Blog

Posted by kfarnham Mar 26, 2008

Continually making it better

There's a theme of improvement runnign through today's blogs, with developers looking to improve their own code, or Java itself, though better, more thoughtful design.

Let's start with Evan


Today's The Day Blog

Posted by kfarnham Mar 25, 2008

Hudson turns 200 (or so)

Release early, and release often, they say. Obviously, that's a strategy that works for Kohsuke Kawaguchi, founder of the Hudson continuous integration project. In Hudson hits 1.200, he writes:

Hudson finally hit 1.200 last Friday. It's not 1.2 nor


Voices Carry Blog

Posted by kfarnham Mar 24, 2008

Community Corner mini-talk sign-ups filling up

Last week, we put the Community Corner at JavaOne on the front page as the Spotlightitem, and in a short time, the mini-talks schedule has nearly filled up. Is it the front page visibility, or the fact that the JavaPosse mentioned it in their latest episode.

At any rate, the practical upshot is that there aren't all that many spots left, although some of the posted sessions may be removed soon if they don't post and link to an abstract. That was a hint, people: follow the instructions for attaching an abstract to your sign-up, or you will be removed. And in the next few days, you should start seeing more of the talks being approved and confirmed by the community leaders.

Assuming that the proposed talks all post abstracts and get approved, we have a pretty remarkable collection of topics so far: Greenfoot, Bluetooth, Groovy, Wonderland, JUGs, SunSPOTs, TrackBots, and more. Looks like a really good series, so plan on stopping by the booth or picking up the podcast feed.

In Java Today, the jMaki project has posted a 1.1 developer release for download. New features include performance and security improvements, the initial release of jMaki Webtop, updating to work with the Yahoo UI 2.5 toolkit, support for Dojo Dijit 1.0.2 widgets, improved documentation, new widgets (breadcrumb, tag cloud, carousel), and more. More details are available in the release notes and Carla Mott's blog.

The latest edition, issue 163, of the JavaTools Community Newsletter is out, with tool-related news from around the web, a graduation (search-tools), and a Tool Tip about a new version of the NetBeans Newsletter in Portugese.

Comet has popularized asynchronous non-blocking HTTP programming, making it practically indistinguishable from reverse Ajax, also known as server push. In the JavaWorld article Asynchronous HTTP and Comet architectures, Gregor Roth takes a wider view of asynchronous HTTP, explaining its role in developing high-performance HTTP proxies and non-blocking HTTP clients, as well as the long-lived HTTP connections associated with Comet. He also discusses some of the challenges inherent in the current Java Servlet API 2.5 and describes the respective workarounds deployed by two popular servlet containers, Jetty and Tomcat.

Today's Weblogsbegin with John


Bouncing Off Clouds Blog

Posted by kfarnham Mar 20, 2008

It's not too early to start planning for JavaOne

Can it really be true that JavaOne is just a little over six weeks away? Everyone who's putting together big demos for the show is probably heading into crunch time at this point, and everyone else needs to buy plane tickets before they become completely unaffordable.

If you're coming, you should plan to arrive in time for Monday's free events at CommunityOne. In one highlight of the event, the NetBeans Team will be hosting the free NetBeans Day at CommunityOne . Hear and see what's new in the NetBeans IDE (Ruby, PHP, Visual Mobile Designer, Swing, Beans Binding, etc.); have lunch with the Java Posse; meet with NetBeans experts and fellow NetBeans developers; and grab some NetBeans swag. Seats are limited, so register now if you plan to attend.

Also in Java Today, SIP (Session Initiation Protocol) technology is behind many of today's popular services, such as VoIP, instant messaging, and web conferencing. Underpinning SIP is the SIP Servlet, initially defined in JSR-116 and, since then, updated inJSR-289. The latter defines a standard application programming model to mix SIP Servlets and Java EE components. The open source project SailFin adds a SIP Servlet technology extension to the GlassFish Application Server. In SailFin: When Java EE Met SIP, JavaLobby's Geertjan Wielenga interview the main developers involved in this project, Binod PG and Vince Kraemer.

In the Artima interview The Importance of Model-View Separation Terence Parr, creator of the StringTemplatetemplate engine as well as the ANTLR parser generator, talks about the importance of separating business logic and presentation.

In today's Weblogs, John


Bliss Blog

Posted by kfarnham Mar 19, 2008

The joy of not writing GUI glue code

I was on a death march project years ago, where the CEO had spelled out what he wanted in our project's GUI, and it was the typical "CEO GUI": seven tabs, each of which revealed a layout with three or four split panes, each jam-packed with as many buttons, tables, and fields as would fit. Sort of like Eric Burke's latest cartoon, but much, much bigger. And totally redundant: all those tabs were largely different views of the same data.

Our team lead was undaunted. Looking at the problem, he took solace in the fact that it was at least possible to wire up the model to all those views. A fewTableModelListeners here, someActionListeners there... a lot to write, but you could at least conceive of someday getting all that code written and compiling.

But something bugged me about having to write all that code. Its purposes were obvious, and it seemed burdensome to express our intentions over and over again to wire all that stuff up.

In our Feature Article, John O'Conner offers a simple class burdened with that kind of glue code, and shows a way out

Note that the basic class is quite simple. A large portion of the code supports the registration of event listeners and the firing of appropriate events at the correct time. As classes and their relationships become more complex, the management of properties, change events, and event listeners can easily represent the majority of a bean's source code.

The Beans Binding libraries help this situation by factoring out the common design patterns and activities involved in keeping properties synchronized. The new library helps you quickly connect properties from different objects, and even helps you avoid writing the same boilerplate code over and over again.

In Synchronizing Properties with Beans Binding (JSR 295) John shows how Beans Binding allows you to drop these hand-written listeners in favor of "binding" properties from two classes to one another, so that a change to one can change the other (and, optionally, vice versa), even handling situations where the binding requires some special conversion because the bound properties are of different types.

In Java Today, Mobile game developers looking to break out of the limitations of 2D can do so thanks to JSR-184, the Mobile 3D Graphics API for Java. According to the ACM Queue article M3G: Bringing 3D Graphics to Mobile Java, "M3G version 2.0 will provide programmable shaders and other OpenGL ES 2.0 features for high-end devices, as well as enhanced traditional rendering for the mass market."

Following the recent release of NetBeans 3.1 Beta, three NetBeans evangelists talked about the most important new features in the latest version of NetBeans in an interview with Artima. They discuss JavaScript and Ruby support in the new version, the possibility of supporting Python/Jython, how they decide which languages to support, NetBeans' new Spring-related features, and other 6.1 improvements.

NetBeans IDE 6.1 Beta is now available to download and preview, and to promote the release, the NetBeans community is holding a blogging contest. "Post a blog describing your experience using the new NetBeans IDE 6.1, a tutorial, insight, tech tip, cool code sample, request for enhancements, etc. Your blog must be linked to a comment or trackback made to the NetBeans Blogging Contest site. Entries must be new material and not copied from something already written. Complete the submission form," or see the contest page for an e-mail link you can use to submit the URL for your blog.

In today's Weblogs, Kohsuke


Precious Things Blog

Posted by kfarnham Mar 18, 2008

NetBeans and the tiny EEE PC... who knew?

Keep an eye out at JavaOne this year: the head-turning status symbol might not be the ubiquitous Apple laptops, but the ASUS EEE PC. Dick Wall had one of these at the Java Posse Roundup and everyone wanted to have a look. What's so striking about it is how small it is: it sports a 7" (178 mm) screen, and uses solid-state storage for additional size and speed benefits. The result is a highly atypical laptop: Linux-based, tiny, light, and cool to the touch.

But with an 800x480 screen and either 2 or 4 GB of drive space, can you really get stuff done on it?

Apparently so. In one of two new NetBeans Vodcasts posted to the Java home page at, Robert Eckstein shows off how NetBeans runs on the tiny EEE PC. He gives practical tips for using removable SD cards to save your projects, rearranging the NetBeans GUI to make the most of the very limited screen space, and points out how NetBeans will add scrollbars to dialogs that are too large to fit the screen (something that some of the EEE's native Linux apps don't do). He also suggests users see his blogfor information on getting a Subversion release more recent than that included with the EEE, as the default version isn't new enough for NetBeans.

So there you have it: a cheap option for being the most gasp-worthy Java developer on your block. And it's not every day that you see a NetBeans-capable laptop small enough to put in a purse or lunchbag.

Also in Java Today, Mark Reinhold announces a milestone for OpenJDK: First non-Sun participant voted into OpenJDK Membership. "YesterdayJonathan Gibbons, in his role as Moderator of the Compiler Group, announced that Neal Gafter has been voted in as a Member of that Group. [...] Neal is not the first non-Sun Member of the OpenJDK Community -- several now-formerSun employees beat him to it -- but he is the first person from outside of Sun to be voted in to Membership."

The Aquarium notes the posting of an OpenDS roadmap. "OpenDS, the project to produce a 100% Java-based LDAP directory now has a proposed roadmap for version 1.0 and beyond. Apart from monitoring through SNMP, all features are already in the current release (v1.0 Milestone 1 from Feb. 27, 2008). Final release for v1.0 is scheduled for May 2008. Ludo Poitou has more details." The post also indicates that, "in other OpenDS news, Tomonori Shioda has posted the Japanese translation of no less than four OpenDS technical posts."

In today's Weblogs, Arun


Professional Window Blog

Posted by kfarnham Mar 18, 2008

How to use the Consumer JRE's translucent and shaped windows

A few weeks ago, I blogged in this space about translucent and shaped windows, following on Kirill Grouchnikov's initial blog about the feature in JDK 6 Update N (or 10, or whatever it's called now). One thing that's worth noting is that while we keep using the term "translucent and shaped" windows, they're really an application of the same feature: the ability to set per-pixel translucency in the still-rectangular window bounds. Given a shape, set all pixels outside that shape to full transparency to achieve a shaped window. Or, set all the pixels to a translucency between 0.0 and 1.0 to get a translucent, see-through effect, as seen the increasingly-popular "HUD windows". Or use both approaches for a shaped, translucent windows.

Kirill dives in deeper in today's Feature Article,Translucent and Shaped Swing Windows:

It has been long awaited, and now it's finally here. Even though the APIs for creating translucent and shaped windows are not in the officially supported packages, they can still be used for creating visually rich cross-platform UIs. The Translucent-Shaped Windows (Extreme GUI Makeover) entry from Romain's blog showcases the JNA project to create a visually compelling use of an animated translucent shaped window. Now you can do the same with the core JDK.

Read the article for some practical and interesting uses of the technique, including translucent tool tips that can now go beyond the borders of their host windows, and a real-time reflection of a playing QuickTime that appears outside of the window's bounds.

In Java Today, the SIP Communicatorproject has been accepted as a mentoring organization for the 2008 edition of Google Summer of Code. If you're a student and you want to write open source this summer (and get a stipend to do so) pick up one of the SIP Communicator summer of code projects. The deadline for joining is March 31.

Sun Microsystems, Inc., is sponsoring the OpenJDK Community Innovators' Challenge, a contest with up to $175,000 in awards, intended to encourage and reward developers working together in solving key problems, initiating new innovative projects that promote new uses for the code, developing curricula and training, and porting the OpenJDK code base to new platforms. Finalists, announced March 17, are Closures for Java (Neal Gafter), Implement XRender pipeline for Java2D (Clemens Eisserer), Provide date and time library from JSR-310 (Stephen Colebourne and Michael Nascimento Santos), Portable GUI backends (Roman Kennke and Mario Torre), Virtual Machine Interface (Andrew John Hughes), Free Software synthesizer implemention for the OpenJDK project(Karl Helgason), and OpenJDK on Windows (Ted Neward). The finalists have until 4 August 2008 to implement their proposals, with all work done using transparent development methods and under the auspices of the OpenJDK Community.

So what's the new Data Reaper project about? Its owners explain, "we were working on the development project and to get data from one of our client's website with fine grained format to display on our application. The other team does not want to provide us the grained format to serve same information. We searched few websites (,, etc) for similar project, parser, or code to re-use on our project and unfortunately, we did not find any parser or code. Therefore, we planned to start code under public license and others can use our code and update with new enhancements."

In today's Weblogs, James Gosling is delighted that NetBeans 6.1 Beta is out! "NetBeans 6.1[Beta] is out, along with a contest. There's a lot to like about it, but my personal favorite is the MySQL support. It couldn't have come at a better time: just a couple of days ago I started a big-ish project using MySQL, and the new NB features have really helped."



Silent All These Years Blog

Posted by kfarnham Mar 17, 2008

Why not talk up your project at the Community Corner?

The sign-ups are already attracting proposed talks, so I want to take some time today to explain what these "mini-talks" we're always talking about are.

At JavaOne, we'll have a big booth, one end of which is reserved for 20-minute eyes-forward presentations. It's got a sound system and a screen for your slides, and seating for a couple dozen people, and is a great way to introduce your project or some other topic of interest to fellow members. These talks are recorded and are then sent out as a podcast over the next few months after JavaOne, allowing hundreds more people to hear your talk.

To sign up, you go to the sign-ups of the Community Corner wiki page, pick a time, and post your name(s), title, and an abstract (which you can post as a loose file to the 2008 mini-talks folder or as a new wiki page of its own). Then its up to your community leader to approve the talk (or clarify issues, like missing abstracts), and after that, it's just a matter of getting your talk and slides together and being there at JavaOne. Oh, and please post your slides either before the presentation, or right afterwards, so we can link to them from the podcast show notes page.

A few spots are already spoken for, but much of the schedule is wide open, so now is a good time to put together your mini-talk and sign up.

I mention all of this today because this week's Spotlightis on the Community Corner at JavaOne 2008, your place to meet up with fellow project members and community leaders. Sign-ups for the mini-talks are still available, so post an abstract and you can show off your project in the booth (and to the audience of podcastlisteners). You can also introduce your project by means of a poster, or by scheduling a time to meet the community.

The latest Java Mobility Podcast is Java Mobility Podcast 39: CQME, Conformance and Quality and jtharness projects in the M&E Community. Kevin Looney, Brian Kurotsuchi, and Mikhail Gorshenev talk about CQME and jtharness projects and their uses as a TCK testing tool and the possibility of using it for testing applications.

In Java Today, Neal Gafter has posted an update to the BGGA closures proposal in the blog entry, Closures: Control Abstraction, Method References, Puzzler Solution. "The Java Closures prototype now supports control abstraction and implements restricted closures and function types. The syntax has changed slightly. Also, as hinted in the draft JSR proposal, there is now support for eta abstraction, which is called method reference in Stephen Colebourne's FCM proposal. We haven't updated the specification, so this will serve as a brief tutorial on the changes until we do. I don't know if this will be the syntax we will end up with, but it will do for now. Finally, we look at solutions to the closure puzzler in my previous post."

The Spontaneousware projectis an abstract framework platform targeted to develop middleware systems for mobile computing and mobile ad-hoc networks. Its architecture is designed to be a platform-independent and it can be implemented to any appropriate device and object-oriented language - for example, is possible to have an interoperable implementation for Java, Symbian or Windows Mobile. The project objective is to construct the first implementation of Spontaneousware aiming a middleware system for Java ME platform and Bluetooth network usingJSR-82 API.

The latest edition, issue 162 of the JavaTools Community Newsletter is out, with tool-related news from around the web, a call to sign up mini-talks in the JavaOne Community Corner, new projects in the community, a graduation (CodeSimian), and a Tool Tip on handling users' issues for your project by using Kohsuke Kawaguchi's "issue police" daemon.

In today's Weblogs, James Gosling talks about how to Have a little fun, bring a little peace with a Java-based game he's discovered. "If you've ever wanted to improve your understanding of conflict in the Middle East (or anywhere, really), there's a cool reality-based game called PeaceMaker that you should try. They've got some interesting videos on YouTube."



Your English Is Good Blog

Posted by kfarnham Mar 14, 2008

Even more languages on the JVM

One event that went by last week -- not necessarily front-page-worthy, but definitely bloggable -- was Sun's announcement that it has hired Python developers Ted Leung and Frank Wierzbicki. Given Frank's association with the Jython project, it's a good bet this augurs well for the future of Python on the JVM, as did last year's hiring of JRuby developers Charles Nutter and Thomas Enebo.

And the scripting doesn't stop there. Groovy seems to (ahem) gotten its groove back in the last year or so. JavaFX Script re-envisions Desktop Java from a declarative scripting POV. And let's not forget the small contingent, prominent at last week's Java Posse Roundup, that can't stop talking about how awesome Scala is.

It almost makes you feel old-fashioned to use plain ol'Java-style Java.

Is this scripting trend taking root in your office or project? The latest Poll asks "Which JVM language do you think you'll be using most by the end of 2008?" Cast your vote on the front page, then visit the results pagefor current tallies and discussion.

Speaking of these other JVM languages, Joshua Marinacci returns with another JavaFX example in today's Weblogs. Presenting JavaFX Doodle #3: A Paper Cutout Demo, he writes: "I'm exhausted and don't have my photos in order yet so the Sydney post will have to wait until next week. For now, however, I thought I'd share with you Doodle #3, which is one of the demos I showed in Sydney."



Nature of the Experiment Blog

Posted by kfarnham Mar 13, 2008

Are new interfaces innovative or just gimmicks?

Last week, I blogged about one of the sessions at the Java Posse Roundup about user interfaces that eventually got off the topic of GUI toolkits -- of which Java has too many, not enough, or both -- and veered into the idea of alternate input methods as contributing to the effectiveness of the user's interaction with the computer. Some of us noted the occasional divergence away from the mouse-and-keyboard paradigm of the last 20 years. For example, when I'm editing video, I'm wildly more effective with my Bella Final Cut keyboard and its integrated jog/shuttle wheel, a physical UI device that is ideal for finding and marking in- and out-points in digital media.

Talking about the idea of alternative UI paradigms, the motion sensors of the Nintendo Wii and Apple iPhone came up, as did iPhone's touch-focused user interface.

In his latest weblog, Simon


Cheer It On Blog

Posted by kfarnham Mar 12, 2008

NetBeans wins again

Great news from last week's SD West Conference and the 18th Annual Jolt Awards ceremony, as NetBeans has won the development environment award for a second year in a row. The IDE was also a "Productivity Award" winner in two categories: Web Development and Mobility Development (with Sun Java Wireless Toolkit 2.5.2), also repeating last year's wins.

The NetBeans IDE that impressed Jolt judges this year is a sleeker and more enhanced tool than its predecessor. After last year's win, the IDE underwent a major overhaul and acquired a faster and smarter editor, support for dynamic languages such as Ruby, a new Visual Game Designer, integrated profiling, and many more features. NetBeans 6.0 was released in December 2007.

Accepting the Jolt awards for NetBeans, Senior Director of Engineering Octavian Tanase thanked the NetBeans community, engineering teams and partner companies for the collective effort that has transformed the IDE into the powerful and feature-rich tool that continues to impress industry experts and developers worldwide.

A few other Jolts worth noting: the winner in the General Books category was O'Reilly's Beautiful Code, which features a chapter by "Open Road" columnist Elliotte Rusty Harold. partner Atlassian won the Change and Configuration Management category for FishEye, which keeps an eye on project activity (more information at the old Cenqua Partner page). And O'Reilly Radar won the Jolt in the "Websites and Developer Networks" category. Perhaps tomorrow we'll discuss the ramifications of the recent Radar post, State of the Computer Book Market, Part 4 - The Languages, as it is of particular interest (or alarm?) to Java developers.

Also in Java Today, The Aquarium reports that Portlet 2.0 is now a Final Specification. "The Portlet 2.0 specification (aka. JSR 286) is now final (see vote). TheProposed Final Draft is now available and should be very close to the Final Final Spec. Sun has support for it in the NetBeans Portal Pack (Blog Entry, Article, download), and will be in Portal Server 7.2, both based on the Open Source Portal-Containerproject. All these are supported on GlassFish. And Liferay has also announced it will support Portlet 2.0 in Liferay 5.0 (Support Case)... and Liferay is also Supported on GlassFish."

1-800-HUDSON? In his Amazon blog entry, Jott to Build - use voice commands to build software, Paul M. Duvall describes an admittedly "gimmicky" technique to build his project via a voice command and a continuous integration server such as Hudson. "I dial an 800 number provided by Jott from my cell phone. When prompted, I say "Build Stage" and hang up. Jott sends my transcribed voice to my email account. On a scheduled basis, an Ant script parses my email searching for keywords. It finds "Build Stage", so it runs an Ant target to execute a remote deployment in the Stage environment."

Today's Weblogsstarts with help from Wolfram


Be Good Blog

Posted by kfarnham Mar 11, 2008

Can applets make a comeback?

After the early enthusiasm for applets faded, some argued that the idea of putting a rich runtime in a box inside a web page was just a silly idea to begin with. Yet the subsequent success of Flash doing more or less the same thing suggests the idea is fine, it's just that the applet implementation, specifically the browser plug-in, was poor.

So, if done right, and with Java's other advantages, like a deep class library and Hotspot-powered performance, could applets still stage a comeback?

A recent presentation by Ken Russell of Sun's Java SE Deployment Team at the Austin JUG has Gregg


If It Works Blog

Posted by kfarnham Mar 10, 2008

Java coming to the iPhone?

Many developers were keeping close track of last Thursday's release of a public SDK for the iPhone (and iPod Touch, and presumably similar devices from Apple in the future). To the Java developer, this seems like competition for the many ME devices out there, but maybe it's actually an opportunity? It's certainly a game-changer.

The latest Java Mobility Podcast offers a panel from January's Mobile & Embedded Developer Days. Java Mobility Podcast 38: Developing and deploying content in the real world listens in to the MEDD Panel session "Developing and Deploying Content in the Real World." It is a frank discussion amongst large and small application developers, OEMs, device manufacturers, carriers, and tool vendors. In one prescient moment -- around 33:16 in this podcast episode -- Rusty Baker, Director of Studio/Film/Content Licensing for Motorola, talks about the iPhone SDK announcement and the effect it would likely have on the mobile industry:

"I actually personally feel... I'm not speaking for Motorola... but I personally feel that things that are happening around the carriers opening up their networks is a more interesting factor, a more destabilizing factor in our territory, in the U.S market right now. And so I actually think some of the most exciting things that are happening are just from the announcements from Apple earlier this month, because it marks a new step for carriers in terms of opening up other ways of reaching their consumers. I think we all should watch that. And we are. We are at Motorola, I'm sure Nokia is also. Because that will create new opportunities and new ways for all of us to bring new solutions to market, and to restructure the way that we're working in this market."

A more open market with more access to the existing handsets and carriers is something that everyone at the MEDDs wanted, and if that's a side effect of the iPhone announcement, it's great news. And the fact that the iPhone SDK opens up opportunities for iPhone-specific developers is obvious. But what if you have an existing ME app and aren't inclined to start over with Apple's completely different tools and APIs? Well, there may be a very interesting opportunity there too...

According an InfoWorld article, "Sun Microsystems is developing a Java Virtual Machine for Apple's iPhone and plans to release the JVM some time after June, enabling Java applications to run on the popular mobile device."

The JVM is to be based on the Java Micro Edition (ME) version of Java, said Eric Klein, vice president of Java marketing at Sun, on Friday afternoon. Apple had not shown interest in enabling Java to run on the iPhone, but Sun plans to step in and do the job itself after having pondered Thursday's release of an SDK for the iPhone by Apple.

So there you go. It's too soon to know specifics, but with any luck, ME developers will be able to get their apps on the iPhone too.

Also in Java Today, A. Sundararajan's weblog introduces BTrace - a dynamic tracing tool for Java. "Are you interested in a byte code instrumentation (BCI) based dynamic tracing solution for the Java platform? If so, please visit BTrace is a safe, dynamic tracing solution for Java. You can express tracing code in Java and run it against a running Java application. Your Java application should be running on JDK 6 or above for BTrace to work."

The latest edition, issue 161, of the JavaTools Community Newsletter talks about how to publicize your project via the newsletter, rounds up tool-related news from around the web, announces a new project in the community and a new release from the Genesisproject, and offers a Tool Tip with a good reference for JavaScript development.



Strange Town Blog

Posted by kfarnham Mar 6, 2008

The Java Posse Roundup overwhelms a town's pizza capacity

Today is the last day of the Java Posse Roundup open-spaces conference. Last night, the group got together at the house the Posse is renting for some Scala demos, lightning talks (including a very impressive JavaFX demo in duplicated their Flex-based conference viewer in JavaFX), and pizza. Problem is, with 38 attendees, we apparently overwhelmed the pizza-making capacity of the small skiing town of Crested Butte: the first two delivery places we contacted balked at the size of our order. So we ended up having to order pizza from three different places to get everyone fed. Yeah, hardship, I know, but when was the last time you heard of someone turning away a big order?

Anyways, after last night's lightning talks, Dick Wall took his portable mic and gave everyone a chance to talk about where they'd come from, what they did at the conference, and what they might change in the future. This session has already gone out as Java Posse #168. While the comments give a good overview of the conference, they don't delve into specifics, and for that, you'll presumably have to wait until the recorded sessions start going out on the Posse's podcast feed.

This year's discussions have displayed a tendency to stray in unanticipated directions. A talk about Java's many widget frameworks spent significant time on Joe Nuxoll's assertion that not being component-based, and thus not fostering a third-party market for components, has badly harmed all of them. One session was based on the idea that the GPLing of Java has led to a second renaissance for the platform, and that it would have perished if not open-sourced. A session kicked off by Bruce Eckel with the broad goal of trying to reinvent work in the style of an open-spaces conference tried to find the common points between everyone's favorite jobs. And Dianne Marsh led a session on the often-unappreciated importance of networking, how to do it, and when you need it. Being an organizer of CodeMash, she also launched a very detailed session on hosting smaller, user-organized conferences, exchanging ideas and details with our host, Bruce, and Stephan Janssen, founder of Javapolis.

So, one more day of geeking out on Java here in Crested Butte, then we all head out of the snow and back to real life. It's been a blast.

In Java Today, is proud to announce the availability of NetBeans IDE 6.1 Beta for download. Highlights of this release include: Rich Javascript editing features, improved performance, especially faster startup (up to 40%), support for Spring web framework, new MySQL Support in Database Explorer, and more The final NetBeans IDE 6.1 release is planned for Spring 2008.

Coming off appearances at Mobile & Embedded Developer Days and other mobility-oriented conferences, JDJ's "JSR Watch" columnist Patrick Curran focuses on the state of ME and its relevant JSRs in JSR Watch: Java Mobile and Embedded Spotlight. "A total of 77 Java ME JSRs have made some progress through the JCP since its inception and 42 have been completed. Twenty Java ME JSRs were active in 2007 (getting started, publishing drafts, going to ballot, or making final or maintenance releases). A quick review of the active JSRs gives a clear picture of the breadth of technologies covered in the ME space: speech APIs (JSR 113), data synchronization (JSR 230), user interface customization (JSR 258), broadcast services (JSR 272), vector graphics (JSR 287), automotive telematics (JSR 298), event tracking (JSR 190), digital TV (JSR 242), and XML (JSR 280)."

Brian Goetz has posted the latest installment of a series on currency, Stick a Fork in it, Part 2, introducing an important new Java 7 class. "One of the additions to thejava.util.concurrent packages coming in Java 7 is a library for fork-join-style parallel decomposition. In part one of this series, author Brian Goetz showed how fork-join provides a natural mechanism for decomposing many algorithms to effectively exploit hardware parallelism. In this article, he'll cover the ParallelArray classes, which simplify parallel sorting and searching operations on in-memory data structures."

In today's Forums,bi11w00ds advocates JavaFX as a utility scripting language I'm just looking for thoughts, comments on JavaFX being used to replace traditional scripting languages such as Perl etc. Aside from being a good basis to write GUI applications, I believe with all the new constructs (specifically sequences) this would be a great non-gui general purpose batch scripting type language. Any thoughts?

mamuneeb asks What is the procedure for compatibility testing (TCK) for J2ME JSRs. "I would like to know the procedure to develop TCK test suite for Mobile JSR's such as (CLDC,MIDP,MM etc...). I came to know that specTrac tool is required to generate the test cases, but what will be the operating environment for this."

Would-be Blu-Ray Java developer darkmoon_uk shares recent experiences working with Playstation 3, BDMV and BD-RE. "I recently invested in a PS3, Burner and BD-RE discs for testing my development. However all is not well. The PS3, like many other players, does not want to play a BDMV folder structure burned straight to the disc. There are a few threads online, mainly from the 'backup' community, who have found that the PS3 *does* play this structure if burned with Roxio DVDit Pro and a PS3 patch. Presumably some bits need to be set on disc during the burn which are not covered by a normal UDF2.50 burn. I have personally found this not to work, burning the HD Cookbook sample project leaves the PS3 in a black screen state. However, I burned a quick, test Roxio DVDit project and this DID work on the PS3, showing menus and video. This proves to me that it is possible to have the PS3 play BDMV, even with the latest firmware (I have 2.10). The question is, how to make the HD Cookbook project play? I consider this an important question as, being a key player, the PS3 makes a good and cost effective test platform... that is, if only it would work."

In light of the kind of effort extended bydarkmoon_uk and other BD-J aspirants, and others not put off by the $4,000 fee for the BD-J content development specs, the Poll asks "What's your interest level in Blu-Ray Disc Java (BD-J)?" Cast your vote on the front page, then check the results page for current tallies and discussion.

In today's Weblogs, Mandy


Happy Together Blog

Posted by kfarnham Mar 5, 2008

How superpackages will make sense of your Java 7 code

After an understandable delay -- author Elliotte Rusty Harold took a new job and moved across the country -- our Open Road series on the open-source development of Java 7 continues with a new feature article today. After a brief update on the current status of the OpenJDK project, Elliot dives right in with an introduction to a new feature intended for inclusion in JDK 7: Superpackages.

The problem that JSR 294 superpackages address is the fact that Java packages look hierarchical, but aren't. As Elliotte points out, "A class has no more access to the internals ofjava.util.HashMap than does a class inorg.apache.xerces." And this has turned out to be a significant problem for organizing classes:

Another common problem arises when writing unit tests. Test code often needs to see parts of a class that the general public isn't allowed to access. Sometimes test classes want to directly test non-public methods. Other times they want to inject dependencies. Usually you'd think test code belongs in a separate package. However, many programmers put their tests in the same package as the tested code precisely because they want to be able to access the non-public parts. Alternatively, some programmers make methods public just so they can be tested, even if that pollutes the published API. Neither approach feels especially palatable.

In our Feature Article, The Open Road: SuperPackages, Elliotte shows how JSR 294 will allow you to write a file to explicitly indicate how you want to expose classes and even specific methods within your package.

We posted a major announcement from the Java 3D team in the forums section last week, but in case it got missed, we're using the Java Todaysection to again highlight the fact that the Java 3D team has announced the open source release of the j3d-core and vecmath subprojects on under the GPLv2 license with the CLASSPATH exception. "This applies to all source code in the and javax.vecmath packages. You may notice that the web page and various README files now refer to the "3D Graphics API for the Java Platform" in many places. This is the official name for the open source version of the Java 3D API. Other than the name, there are no differences (and, in fact, we will build the binary version of Java 3D 1.5.2 from the same sources)."

MySQL, the popular open-source database, is now part of Sun's software portfolio. In a new screencast from NetBeans technology evangelist Roman Strobl, get a quick start to developing database driven applications with the NetBeans IDE using the MySQL database server. The demo goes through the steps of connecting to a database from NetBeans, using the MySQL editor to create tables, and exposing the tables in a desktop application and the data as web services.

A new SDN article by Eve Maler and Marina Sum looks at Federated Identity Through the Eyes of the Deployer, describing the problem, and the solutions provided by projects like OpenSSO. "Would you be interested in outsourcing a part of your identity management infrastructure--the authentication that begins user login sessions and even some user attribute data--to an external source? Conversely, would you be interested in exposing an interface to your user accounts for use by the applications that depend on that authentication and data? That's what federated identity is about: distributing identity information and tasks across security domains so that the parties involved can focus on the jobs they do best."

In today's Weblogs. Felipe


Absolute Beginners Blog

Posted by kfarnham Mar 4, 2008

Things not to do at startups

The Java Posse Roundup is underway in snow-covered Crested Butte... and I'm serious about the snow part. Check out Robert Cooper's photo of fellow Roundup attendee Charlie Collins standing in front of a snowbank that blocks the entire first floor of the house behind him.

The theme of this open-spaces conference is "don't repeat yourself", a pretty flexible topic for unconference sessions. I kicked off a session called "startup mistakes not to remake", which started by discussing specific lessons learned from working at startups, and continued in some interesting directions. After all, as engineers, we can't keep management from doing stupid things, so the important survival skill is to see anti-patterns at work and stay the heck away from companies where they're evident. One of the themes that emerged was that in a startup, engineers can't afford to think they're better than anyone else; startup employees need to band together and believe in each other, and really can't tolerate the common "Dilbert"-style cynicsm about marketing or management. Joe Nuxoll and Dianne Marsh also offered some interesting perspectives about the relative markets for talent and entrepreneurs in the Bay Area and the Midwest, with Dianne trying to find a way to deal with the constant pressure from VCs to move nascent companies out West, even when highly-talented developers want to stay in (or return to) other parts of the country.

Session 2 for me focused on UI. It started with Joe Nuxoll talking about the best ideas in user experience, but took an interesting when some of the attendees pointed out that all the real progress is being made in new devices where a talented team can rethink all the concepts of user interaction: the iPhone and the Wii, for example. As Robert Cooper complained, there's been no substantial change in PC UI design since the mouse and windowed desktop took over in the mid-80's. Despite the occasional novel experiment, like the guy who did head-tracking with the Wii remote, there's nothing you as a programmer can count on being present on your end user's computer. What if, for example, your mouse had a small rumble pack, so you could get a little shake when you moused outside a window frame, or over a default button, as the Wii remote does? If it's a good idea, it might take hold -- Joe noted the quick emergence of the scroll-wheel mouse -- but improving the UI by improving the physical interaction between computer and user is a slow-moving process.

Cooper thinks it would help if JSR 82 (Java APIs for Bluetooth) was in core Java, so you could count on being able to access devices like Wii remotes. What do you think?

In Java Today, the remarkable Ajax project Direct Web Remoting gets the spotlight in the InfoQ interview Interview: Joe Walker about DWR 3.0. "InfoQ had the opportunity to talk with the DWR (Direct Web Remoting) project lead Joe Walker. He discussed the upcoming release of DWR 3.0 including major features, helpful features and fixes for developers, a time line and a look at the future of DWR."

Kelly O'Hair is reporting about the near-future of OpenJDK releases in his blog My First OpenJDK7 Mercurial Push. Describing his upload to the JDK 7 build area forest, he writes, "This is just one of the many team areas for the JDK7 project, as the build team changes accumulate, at some point we will decide (as a team) to do some more detailed build&test runs and when we are satisfied all is well, we will reserve a time to integrate all these build changes to the master area Mercurial forest at"

The submission period for the NetBeans Innovators Grants, part of Sun's Community Innovation Awards Program, ends on Friday, March 7. "The NetBeans Innovators Grant is a process to provide grants to developers or teams of developers to work on an open source project. A total of 10 large projects will be chosen and awarded a grant of US$ 11,500 dollars. Another 10 smaller projects will be chosen and awarded a grant of US$ 2,000 dollars."

In today's Weblogs, Kohsuke


Running On The Spot Blog

Posted by kfarnham Mar 4, 2008

Does Rails' "whipitupitude" really mean EE is "dead"?

When someone posts a blog title like Is J2EE Dead?, as Brian

The compelling alternative to JNI

JNI isn't for the faint of heart, and not just because the very premise of using it implies being capable in both Java and C or one of its various offshoots (I propose we use the pattern*C* to match C, C++, C#, and Objective-C). The last time I spent serious quality time with JNI, I felt like I was writing 20 lines of plumbing for every one line of native code I wrote, to say nothing of wrangling Ant to build the whole thing. It didn't help that calling into Objective-C basically required two header files for each implementation: one from javahwith my JNI headers, the other to declare the Obj-C interface. Unsurprisingly, I didn't get very far before I lost interest and patience

Duncan McGregor took on a similar task -- providing Java wrappers around calls to Mac OS X's Cocoa framework -- but he had the sense to opt-out of JNI. Instead, he used the JNA library to dynamically make native calls, without needing to muck around with JNI. As JNA's proect page describes it:

The JNA library uses a small native library stub to dynamically invoke native code. The developer uses a Java interface to describe functions and structures in the target native library. This makes it quite easy to take advantage of native platform features without incurring the high overhead of configuring and building JNI code for multiple platforms.

The result of Duncan's work is Rococoa, "a generic Java binding to the Mac Objective-C object system. It allows the creation and use of Objective-C objects in Java, and the implementation of Objective-C interfaces in Java." The project initially started as a QTKit wrapper to expose QuickTime functionality, Rococoa examples of which are provided on a QuickTime page.

All without fighting with JNI over parameter lists, accessing Java values from C, or any of that rigamarole. Nice.

Also in Java Today, the OpenJDK 6 project, the backport of OpenJDK's sources to the JDK 6 spec, has put out a b06 source release. As described in Joe Darcy's blog, imaging classes have been moved from closed to open, JAX-WS 2.1 has been included, and the SNMP portion of the build has been modified to not fail when binary plugs are absent. Several other improvements are included. Another build is expected within two weeks.

The latest edition, issue 160, of the JavaTools Community Newsletter has been published, with a look ahead to JavaOne and the Community Corner mini-talks, tool news from around the web, new projects in the community, a new graduation (loc-counter, and a Tool Tip on writing Scala applications with Eclipse.

In today's Weblogs, Cay

Filter Blog

By date: