The Cover PagesThe OASIS Cover Pages: The Online Resource for Markup Language Technologies
Advanced Search
Site Map
CP RSS Channel
Contact Us
Sponsoring CP
About Our Sponsors

Cover Stories
Articles & Papers
Press Releases

XML Query

XML Applications
General Apps
Government Apps
Academic Apps

Technology and Society
Tech Topics
Related Standards
Created: June 28, 2004.
News: Cover StoriesPrevious News ItemNext News Item

Sun Releases JDesktop Network Components (JDNC) as an Open Source Project.

Sun Microsystems has announced the release of the open source JDesktop Network Components (JDNC) Project on JDNC includes the lightweight JDNC Markup Language, and aims to "simplify the development of rich networked desktop applications by means of a set of high-level user interface components with built-in networking and data-binding support."

The JDNC Markup Language is "a simple, extensible XML-based markup language that enables developers to configure JDNC based clients using XML and deploy them either as Java Web Start applications or as applets in a standard browser."

JDNC "leverages the power of J2SE and Swing while providing a higher level API, as well as an optional XML markup language, which enables common user-interface functionality to be constructed more quickly, without requiring extensive Swing or GUI programming skill. Additionally, JDNC simplifies the task of connecting a rich client to a J2EE backend, including JDBC and WebServices."

JDNC has a specific goal to make programming shortcuts accessible to a broader developer base, and especially to markup language developers. It will allow a wider audience to build "rich, data-centric, Java desktop clients for J2EE-based network services comparable to what enterprise developers typically build, such as SQL database frontends, forms-based workflow, and data visualization applications.

Three standard client deployment options are supported for JDNC, since is completely Java-based: (1) as a standalone application; (2) an application deployed with Java WebStart; (3) Applet deployed in a browser using Java Plugin. "When using the JDNC markup language, the same JDNC XML markup file may be used in all three cases. JDNC provides the bootstrapping classes which interpret the XML file and realize its contents in the appropriate toplevel UI container."

Offered under the Lesser General Public License (LGPL), JDesktop Network Components is one of several open source projects announced by Sun at the JavaOne 2004 Conference. Other technologies contributed to open source include Project Looking Glass, Java 3D Desktop Technology, and JDesktop Integration Components (JDIC).

About the JDNC Markup Language

The JDNC Markup Language is a high-level XML language for declaratively defining an enterprise desktop client. The development web site provides the JDNC Markup Schema — a browsable schema documentation which defines the syntax for combining elements and attributes, a JDNC XML Markup Tutorial, and JDNC Markup Examples (set of example JDNC markup files showing how to construct common scenarios)...

"There are a variety of ways in which you can get started with JDNC, depending on your needs. If you are a web developer currently using HTML and JavaScript, you might be pleasantly surprised at how easy it is to use JDNC components in a web-started application or an applet. If simplicity is key, you might want to start with a markup language interface to JDNC components. If flexibility is paramount, you may use JDNC components directly through their Java API. Whichever approach you take, you will never sacrifice extensibility, as both JDNC components and their XML interface are fully customizable.

Web developers who do not want to code in Java may use JDNC components through JDNC markup language. JDNC Markup Language is not a user interface markup language, but an extensible configuration language for UI and non-UI components alike. JDNC Markup Language brings renewed excitement to the Java platform by making it accessible to a whole new constituency of developers, who might not have considered Java otherwise...

Extensibility: JDNC Markup Language can be used in compound documents that can host markup elements from the JDNC schema as well as from other user-defined schemas. Advanced developers may plug in their own domain-specific schema extensions and tag libraries for object realization..." [from the Guide and Tutorial]

Motivation for JDesktop Network Components (JDNC)

"Over the years, we have consistently heard feedback about building Java desktop clients that can be summed up in just one word: simplify. Skilled developers have been able to create all kinds of rich, responsive applications in Java, however developers with less time to invest are often thwarted by the size and complexity of the interfaces they need to master.

This situation is not peculiar to Java: all of the platforms that provide comprehensive support for building desktop applications, like GNOME, KDE, and Mac OS X are necessarily complicated. However, what some of them have, and what Java lacks, is a shortcut for developers who are building applications that match a small number of common archetypes. Database and web service front ends, forms-based workflow applications, and simple chart/graph information visualization clients are good examples of these common archetypes.

Thus, we have initiated a new open source project on, JDesktop Network Components (JDNC), which aims to provide the shortcuts required to construct these sorts of desktop applications in significantly less time by reducing the learning, design, and coding requirements. Additionally, JDNC has a specific goal to make these shortcuts accessible to a broader developer base. This ambition has led us to develop a high level XML markup language for JDNC which makes the richness of the Java client platform, previously accessible primarily to Java developers, amenable to markup developers as well! The goal to make Java desktop client development accessible to a wider audience is also driving our focus to make JDNC a natural companion for development tools, which is a critical requirement..." [from the Overview article]

Principal references:

Hosted By
OASIS - Organization for the Advancement of Structured Information Standards

Sponsored By

IBM Corporation
ISIS Papyrus
Microsoft Corporation
Oracle Corporation


XML Daily Newslink
Receive daily news updates from Managing Editor, Robin Cover.

 Newsletter Subscription
 Newsletter Archives
Bottom Globe Image

Document URI:  —  Legal stuff
Robin Cover, Editor: