Last week, Sun Microsystems Inc. licensed a pair of the underlying technologies of the Java Desktop System under the open-source LGPL (GNU Lesser General Public License).
The two projects, JDNC (JDesktop Network Components) and JDIC (JDesktop Integration Components), are essentially to Java application developers what Microsofts ActiveX and COM were to Windows developers—an architecture for creating easily configured application components and for integrating with the functionality of the local operating system and other applications.
The main difference between these technologies and their Windows counterparts, of course, is that they work on Windows, Linux and Mac OS X.
"Looking Glass was the sizzle," Curtis Sasaki, Suns vice president in charge of desktop solutions, said in an interview with eWEEK.com. JDNC and JDIC, he said, were the real meat of Suns latest desktop open-source efforts.
JDNC is a set of interface components based on Java 2 Standard Edition and Java Swing visual classes that can be used to build desktop client applications. The components can be configured with properties defined in XML to connect to the network and to data sources. The currently published set of JDNC components includes a data-bound grid, form and text editing objects that would be familiar in their behavior to any veteran Visual Basic developer.
JDIC, on the other hand, is a set of components designed to allow Java desktop applications to integrate more closely with the resources of the native operating system they run on, providing a standard way to connect to those resources. For example, rather than using Javas own HTML-rendering capabilities, a developer could use a JDIC to integrate a Web browser running on the local operating system, such as Internet Explorer or Mozilla.
JDIC also provides Java developers with a way to tap into the functionality of the client operating system they are run from. Sasaki said one of the first applications built with the JDIC project was a Java screen saver that runs on Windows, Linux and Mac OS X.
But adoption of JDIC and JDNC by all desktop Java developers may prove to be less than automatic. The Eclipse open-source Java development environment, for example, relies on the SWT (Standard Widget Toolkit), a competing visual component standard, for interface components.
Even so, Sun technology evangelist Simon Phipps said he is optimistic that the boost in productivity provided by JDIC and JDNC should "put the whole SWT argument to rest. You can either write the application once for all platforms, or use SWT and have to refactor it for every target platform."