For years Java developers have been warned about the dangers of using finalize methods to release system resources. Josh Block describes the issues thoroughly in his book, Effective Java (Item 6: Avoid finalizers), but just Google for "avoid finalizers" or "finalizers considered harmful" to find hundreds of similar discussions not just about Java, but most other languages that offer the facility...
on Aug 17, 2005
Most of the nowadays open-source and commercial products extensively use other products. Although the "not invented here" syndrome is infective, things such as look-and-feel, layout managers, graph libraries, reporting tools etc. are taken from well-known and actively maintained third party sites. These tools come in variety of licenses, most of which require you to include the corresponding...
on Aug 13, 2005
In my last blog's comments Andy Roberts asked the following question:
I always keep my eye on SwingLabs because it is adding great value to the existing Swing toolkit. One thing that confuses me is just *how* it interacts with Swing, within the development process, that is. SwingX is an incubator for neat features, for example, sortable tables. Yet the approach adopted by Swing devs in Mustang...
on Aug 12, 2005
Time stands still for no man. Technology even less so. The world moves on and we have to adapt.
When Chris and I started writing Swing Hacks it represented the most advanced Swing techniques that we knew at the time. That was almost a year ago, though, and the world has moved on. Java 1.5 has become mainstream (on Windows at least), we've had a successful Desktop track at Java One, and I've...
on Aug 12, 2005
IntelliJ IDEA 5.0 is out, and since one of my projects is on the approved list, I seized an opportunity to start working with it.
While some of the features are not for me (such as JSP 2.0, J2ME and CSS support), others come in very handy (one of my favourites is an insanely fast code inspector). One of the features (that was already present before) allows you to switch look-and-feels of the...
on Aug 9, 2005
I just got an email from my co-author and looked up the Fry's ads for the San Jose Mercury news. If you live in the Bay Area (or San Jose, at least) then you can get a copy of Swing Hacks for 20$ minus a 15 dollar rebate, for a final cost of 5 bucks. Supposedly it's even cheaper in Atlanta. I don't know what stores this applies to so be sure to check out the ads for the local Fry's in your area...
on Aug 6, 2005
Java Web Services and XML
The initial version of the JAXB RI unmarshaller was written for 1.0 for more than 2 years ago, and that was based on my experience working with a databinding tool called RELAXNGCC. The idea was to build a push-down automaton by using XML events as alphabets. This was very flexible, in that it can capture most of the RELAX NG grammar (such as a choice between attributes, or a choice between an...
on Aug 16, 2005
ID/IDREF has been with XML since its very first day. It works nicely with databinding tools, because it's easy to do a type analysis with ID/IDREF In this regard, key/keyref in XML Schema is much worse --- in general it's not even possible to determine how a given key/keyref constraint maps to which field/method of an object.
ID/IDREF is great, but it is sometimes too simple. For example,...
on Aug 15, 2005
Nowadays many Java tools need to access HTTP resources. For example, Ant has a <get> task, Maven needs to download jar files, javadoc needs to locate package-list from a remote site, JAX-WS's WsImport reads WSDL from a remote website, and JAXB's schema compiler does the same for schema files. The list could go on forever.
So first let's look at how these tools support proxies?
on Aug 10, 2005
I think the SOA hype is essentially a realization. The IT industry has realized that today's cutting edge technology is tomorrow's legacy.
And that systems we create today ought to work with systems to be developed in the future.
So how do we ensure that today's systems can be best utilized tomorrow ?
Decompose the system into reusable components:
We can selectively use parts of the system...
on Aug 9, 2005
Sun's Web Services and XML group has openings in the USA (West and East
coast), India (Bangalore) and in the Czech Republic (Prague). Check out Eduardo's
for more details.
I've been with this group since it's inception (that's why biased) but it has
been fun all along. Our group catapulted Sun to the top
spot in Web Services toolkits and am very proud of it.
You can make a difference!...
on Aug 4, 2005
Good commenting always make it easier to understand the source code (although people have different opinions about what exactly is good comments.) As such, one of the things we've been doing is to make sure that the JAXB RI source code is well commented. This is mostly done by javadoc, which is good for describing lower-level details of the code.
It's also nice for a project to have a higher-...
on Aug 3, 2005
WSDL 1.1, section
3.7 defines SOAP header fault as:
The optional headerfault elements which appear inside soap:header and have the same syntax as soap:header)
allows specification of the header type(s) that are used to transmit error information pertaining to the header
defined by the soap:header. The SOAP specification states that errors pertaining to headers must be returned
in headers, and...
on Aug 1, 2005
Today marks an exciting milestone for the IDE folks at Sun. It's the launch of the Early Access release of Sun Java Studio Enterprise 8, an all-encompassing IDE of numerous capabilities for building, debugging, testing, deploying, and tuning Web applications and Web services.
Since December 2004, I've been working closely with many dedicated, knowledgeable, and capable engineers on the Java...
on Aug 16, 2005
Three weeks without blogging and it feels way too long. I'm productively engaged with coauthoring technical articles for Sun Java Studio Enterprise 8 Early Access, soon to be released. In the works are an overview and four papers that address migration, UML modeling, security, and debugging. Excellent topics for both novice users and those who are already familiar with Sun Java Studio...
on Aug 8, 2005
I just got back from a trip out to Boston. Being away from my home and cappuccino maker, I found myself standing in line at Starbucks far too many times-- listening to all kinds of orders for 'coffee'.
One could compare the JavaServer Faces framework to a chain like Starbucks. Starbucks offers a multitude of choices under a packaged 'brand'. You have those that know exactly what they want and...
on Aug 7, 2005
Global Education and Learning
Greg Barton has created what I think is the first project in the GELC and possibly in all of Java.net that might be the first Java software you would find in the art classroom. Conceived by a professional artist and a very smart Java developer, this open source and non-commercial application is available to anyone that wants to use it. This software could make its way to your local high school...
on Aug 11, 2005
Delivering Web Services is one of the primary themes for Mustang (Java SE 6). Our goal is that JSE will provide reasonable support for ease of development for the web services stack. This will primarily be client-side focused with a lightweight server to support callbacks. The main specifications are the Java Architecture for XML-Web Services (JAX-WS) 2.0 (formerly known as JAX-RPC) and Java...
on Aug 8, 2005
In its rich history, NetBeans has grown various command-line options that affect how some things work or look. Some are for screen-real-estate freaks who want to minimize the size of everything but the editor; some turn on features that are off by default for one reason or another.
Just for fun, the other day I patched Boolean.getBoolean() to find out just what was actually still in use (now,...
on Aug 8, 2005
Today, I received my award that was given by James Gosling at the NetBeans Day preceding JavaOne 2005.
As you can see in the picture, the award was signed by three peoples.
On the right, I can recognize the signature of James Gosling.
But I have no idea about the two other signatures.
If you could help me to identify the two others signatures, I will be very happy.
I just would like to say that...
on Aug 2, 2005