YOUR FEEDBACK
The 4 Core Principles of Agile Programming
Siegfried wrote: Actually, every elephant has two left feet, and two right...


2007 West
GOLD SPONSORS:
Active Endpoints
Your SOA Needs BPEL for Orchestration
BEA
Virtualized SOA: Adaptive Infrastructure for Demanding Applications
Nexaweb
Overcoming Bandwidth Challenges with Nexaweb
TIBCO
What is Service Virtualization?
SILVER SPONSORS:
WSO2
Using Web Services Technologies and FOSS Solutions
Click For 2007 East
Event Webcasts

2008 East
PLATINUM SPONSORS:
Appcelerator
Think Fast: Accelerate AJAX Development with Appcelerator
GOLD SPONSORS:
DreamFace Interactive
The Ultimate Framework for Creating Personalized Web 2.0 Mashups
ICEsoft
AJAX and Social Computing for the Enterprise
Kaazing
Enterprise Comet: Real–Time, Real–Time, or Real–Time Web 2.0?
Nexaweb
Now Playing: Desktop Apps in the Browser!
Sun
jMaki as an AJAX Mashup Framework
POWER PANELS:
The Business Value
of RIAs
What Lies Beyond AJAX?
KEYNOTES:
Douglas Crockford
Can We Fix the Web?
Anthony Franco
2008: The Year of the RIA
Click For 2007 Event Webcasts
SYS-CON.TV
TOP THREE LINKS YOU MUST CLICK ON


Desktop Java: JDNC Released as Open Source Project

Digg This!

  • Java Trends - Exclusive Interview with Amy Fowler

    In her extensive "Java Trends" interview with JDJ last month, Sun's Amy Fowler - technical lead of the Java Desktop Network Component (JDNC) project - said that the JDNC API "is targeted at Java developers who aren't necessarily Swing literate" and spoke of her "current fever to make rich Java clients easier to build."

    Now in her latest blog Fowler turns up the heat under the JDNC project, inviting developers to read up about it in her latest article, visit the project site, "and join in on making it happen."

    "After all,": Fowler adds, "who knows better than you [i.e., the developer] what would make your development life easier."

    The article she refers to, published at javadesktop.org, the java.net community for developers of apps with rich client interfaces, confirms that  JDNC has been released as an open source project.

    Fowler explains:

    "This enables us to make the technology available to you early enough so that you can directly shape the vision, the feature set, and even the code. There is still a lot of work to do — the JDNC feature set is far from complete and there remain rough edges, especially in the API, which has not had extensive usage outside of unit testing and markup-driven use-cases. But, that is exactly why we need your involvement."

    "Work with us as we make the technology marry better with tools." she continues, "File bugs and requests for enhancements. Submit code changes. Submit new components. We are anxious to engage directly with you to make Java desktop client development as productive and satisfying as we all know it can be."

    In her article, Fowler writes explains that the need for JDNC was inspired by the realization that, although applications rarely fit neatly into a cookie-cutter mold, many of the apps which enterprise developers need to build do share a common cross-section of functionality.

    "In developing JDNC," she writes,  "we are creating shortcuts for these common features so that developers can get applications up very quickly and then easily enhance them over time. Central to these "shortcuts" is a suite of very high level user-interface (UI) components which leverage Swing, but provide common functionality in a simpler JavaBeans component API."

    "Although these components are indeed the project's namesake, they are only part of the solution," Fowler adds.

    "The most central feature shared by what we call "data-centric, enterprise desktop clients" is connecting users with data — loading it, viewing it, filtering it, editing it, validating it, saving it, and so on. And these days that data is usually tied to a network data source, such as an SQL database, HTTP servlet, or WebService, bringing with it the complexity of networking. JDNC does the heavy lifting here, by providing built-in support for dealing with these network data sources, including multithreaded support (so the UI doesn't block during network operations) and incremental loading — hence, the "Network" in "JDesktop Network Components".

    The application model for a data-centric enterprise client boils down to the life cycle of its data. JDNC promotes this notion by supporting the pattern of clearly separating the data from the UI, but making it very easy to bind the two together. Application data is encapsulated in one or more client-side, UI-independent data models, such as a JDBC RowSet or a JavaBeans component. The data-model interface should be easy to understand and easily configurable from tools, with simple properties to configure its data source, metadata, edit constraints, validation logic, etc., and simple actions for common operations such as load, insert, modify, cache locally (for off-line use), and update (back to server). The UI components are then bound to that local data model (or models) with a simple syntax. From a tool the binding might be created by drawing a line between graphical representations of the two objects. The connection between the UI and the local data model is handled by JDNC's binding mechanism, which automatically handles input validation, type conversion, pushing and pulling values to/from the model, and reporting errors to the user. This frees the developer to focus on their data and how it should be presented in the UI, rather than on the plumbing which glues the two together."

    As JDNC is a work in progress, Fowler concedes that those involved have not yet implemented all the functionality required to realize this vision.

    For example, she notes that support for disconnected RowSets (JSR 114) will be included in the release following 0.5.

    "However, 0.5 does include an experimental version of a data-binding framework for Swing components which, being central to our purpose, should evolve substantially over the course of the project."
    Anyone interested can view JDNC's Feature Summary for detailed information about current and planned features, Fowler adds. 

  • About Java News Desk
    JDJ News Desk monitors the world of Java to present IT professionals with updates on technology advances, business trends, new products and standards in the Java and i-technology space.

    Will wrote: Interested in a better alternative to JDNC? - more mature - more features - production stable Take a look at JForm! http://jform.coderight.nl Will
    read & respond »
    Greg Leisner wrote: I'm reworking a legacy Java app that uses a very hacked-up version of SUN's original JTreeTable. Replacing those classes is on my todo list. I'm looking forward to adding this library to the app and cleaning it up alot! Since the modified class has been in use for 5 years, I hope to be able to provide useful feedback. Thanks to all who worked on this.
    read & respond »
    Gerald Bauer wrote: Just to let you know I've started a JDNC mailinglist over at Yahoo! Groups. If anyone is interested in JDNC I invite you to join the discussion and ask questions or share tips and tricks about Sun's new Java Desktop Network Components initiative. Find out more @ http://gr oups.yahoo.com/group/jdnc - Gerald
    read & respond »
    LATEST JAVA STORIES & POSTS
    Case Study: Java and the Mac
    This is the story of a Mac application developer (okay - it's about two of them) who set out on a quest to find an application development tool based on Java so his boss would let him develop on the Mac platform, which he loved. There was only one catch - he had to find a tool th
    A Lightweight Approach to SOA and BPM in Java Using jBPM
    SOA is mostly associated with technologies such as BPEL, SCA and Web Services. But does SOA really imply these technologies? In this session we will show how you can use the service oriented approach while staying inside the Java world. jBPM is a powerful lightweight framework th
    JavaOne 2008: Uncommon Java Bugs
    Any large Java source base can have insidious and subtle bugs. Every experienced Java programmer knows that finding and fixing these bugs can be difficult and costly. Fortunately, there are a large number of free open source Java tools available that can be used to find and fix d
    The 4 Core Principles of Agile Programming
    One of the things I really enjoy at the moment is the recognition and adoption of agile programming as a fully fledged powerful way to deliver quality software projects. As its figurehead is a group of very talented individuals who have created the agile manifesto (http://agilema
    JavaOne 2008: Sun Adds Comprehensive Video Capabilities to JavaFX
    Sun Microsystems announced it has entered into a multi-year agreement with On2 Technologies to add comprehensive video capabilities, using On2 Technologies TrueMotion video codecs, to Sun's JavaFX, a family of products for creating Rich Internet Applications (RIAs) with immersive
    JavaOne Archives - Dvorak Comments on AMD Intel Lawsuit on SYS-CON.TV
    Conference in San Francisco. Dvorak held forth on a number of topics, including the new AMD/Intel lawsuit, the viability of Java and Sun, the value of (or lack thereof) of corporate PR, and whether or not a new book about Silicon Valley is really worth reading.
    SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
    SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
    Click to Add our RSS Feeds to the Service of Your Choice:
    Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
    myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
    Publish Your Article! Please send it to editorial(at)sys-con.com!

    Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021

    SYS-CON FEATURED WHITEPAPERS

    ADS BY GOOGLE
    BREAKING JAVA NEWS
    KongZhong Corporation Reports Unaudited First Quarter 2008 Financial Results
    KongZhong Corporation , a leading wireless value-added services (WVAS) and wireless media co