Skip to main content

Today's The Day

Posted by editor on March 25, 2008 at 6:25 AM PDT

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 — it's 1.200, the 201st release of Hudson since its 1.0 release, which was a little over 3 years ago.

A few weeks back when I knew that it's approaching 200 mark, I briefly thought about giving it a longer soak time to make it a very stable release, or perhaps adding some major RFE in this release. Or even call it 2.0. But in the end I just kept doing what I've been doing all along, and next thing I knew it was already 1.200!

If you read a lot of Java sites, you may have noticed more and more people using Hudson, and writing about it. Just the other day, Meera Subbarao wrote a small article on JavaLobby to proclaim that Hudson's So Groovy:

Having used Cruise Control for almost 4 years, when I started looking at Hudson last week, I was impressed seeing how easy it was to configure and get it up and running in just a few minutes. It also has several plugins available, and if you don't find one you can quickly write one as well.

And that article, in turn, references a blog on Versioning a Hudson job configuration from

So if you need CI, and you haven't tried Hudson, you're probably missing out. Go check out this very popular project when you get a chance.

Also in today's Weblogs,
Rémi Forax has done some clever hacking on the highly dynamic Da Vinci Machine to achieve
Da Vinci runtime properties. In the blog, he describes how he managed to
"use anonymous class of the Da Vinci VM to implement the runtime support of the property spec."

Using jMaki in your web apps? Get a t-shirt. Carla Mott explains,
"are you using jMaki in your web apps? If so let us know and we'll send you a t-shirt."

In Java Today,
the SDN has just published an article by Arun Gupta and Rick Palkovic, 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."

Hoping to keep community members from "leaving money on the table," Eduardo Pelegri-Llopart has posted some GAP (GlassFish Awards Program) News and Questions. "The GlassFish Awards Program (GAP) is intended to encourage and reward innovation in the GlassFish Community. The program's rules are quite loose and many types of projects will qualify. There are US$ 175K available, for both projects and bug submissions; check previous posts for additional commentary."

JavaSpaces has been around for awhile, but it continues to gain interest as clustering of all kinds gains traction, and as the industry as a whole begins to discuss and implement more advanced forms of distributed computing. JavaSpaces and its close sibling Jini are the topic of Integrating Space-Based Architecture with J2EE, a recent podcast discussion with Joe Ottinger on TheServerSide.

In today's Forums,
metamatic asks
Why is JAXB looking for a DTD when unmarshaling & how can I make it stop?
"I've taken the XML schema in a .xsd file, and used to to generate a bunch of classes. I've written my code to generate an unmarshaler, feed it an example file (actually a dump of some data fetched via HTTP), and then run through the unmarshaled object tree. Now, my example input file has a DOCTYPE declaration which refers to a DTD by relative path. If I delete that DOCTYPE, everything works. With the DOCTYPE in place, I get an exception saying the DTD couldn't be found. My first question is, why is JAXB going and looking for a DTD, if I already compiled all the schema information into Java classes? The second question is, how can I make it stop?"

whartung suggests the answer to the thread
Re: Setup of Glassfish Email to use remote server and Port is in JavaMail, not GlassFish. "You need to hit up the JavaMail docs to learn what extra properties and what not you may need. For example, mail.smtp.port is the property you would set to set the SMTP port, and you can add that directly to the extra properties on the JavaMail resource. GF will pass those through untouched to JavaMail so it can do whatever it wants to do. I dunno how SSL is supported via JavaMail, but there is a class: com.sun.mail.smtp.SMTPSSLTransport. That looks suspiciously helpful."

whartung discusses a JMX/JMS combination in
Re: JMS Standalone Client.
"That's an interesting idea of using JMX as a primary application interface. It somewhat routes around the development and deployment model (since JMX components are server centric rather than application centric). But it does have the benefit of being portable and cross container, something, as you noted, that can't be said for either JMS or Remote EJB. (By portable I mean runtime portable, where a single client can talk to multiple hosts of different vendors)."

Current and upcoming Java

Registered users can submit event listings for the href=""> Events Page using our href="">events submission form.
All submissions go through an editorial review before being posted to the

Archives and Subscriptions: This blog is delivered weekdays as
the Java
Today RSS feed
. Also, once this page is no longer featured as the
front page of it will be
archived along with other past issues in the href=""> Archive.

Hudson turns 200 (or so)