Introducing JDesktop Integration Components

Discussions

News: Introducing JDesktop Integration Components

  1. Introducing JDesktop Integration Components (14 messages)

    JDesktop Integration Components (JDIC) was announced at JavaOne. The set of components are meant to allow Java developers to access native features through cross-platform APIs. This article goes through the components and lets us know what we can do. For example, it is now trivial to embed a native browser into a UI canvas.
    If you have been a Java developer for a while you may have had the experience of being told that Java can't do everything that native C can. You may have struggled with the HMTLEditor pane while Windows developers down the hall embed Internet Explorer into their programs with just a few lines of code. I'll admit it: as great as Java is, there are times I long for the features and system access of native programming.

    If you hang out on java.net at all, or read any of the JavaOne news coverage, you may have heard of the JDesktop Integration Components (JDIC). This new API lets Java developers finally do the sorts of things we've always envied of our native brethren. This article will give you a complete overview of the JDIC features, with a small example of each, and a list of what to download to get started. We will try out all of the APIs except for the SaverBeans sub-project, which I will cover separately in part two.

    JDesktop Integration Components, or JDIC, is a catchall project for a set of modules that gives Java developers access to native features through cross-platform APIs. It was started by the Desktop group at Sun to let Java applications better integrate with the desktop on which they are running. They made JDIC open source to as a way to get rapid feedback from developers on desired features, as well as bug reports. While there are no current plans to do so, the JDIC team is looking into pulling some of the JDIC features into a future version of the core Java libraries.

    Introducing JDesktop Integration Components

    Threaded Messages (14)

  2. JNI Wrapper (www.jniwrapper.com) has this now. Good cheap tools.

    -Pete
  3. JNI Wrapper (www.jniwrapper.com) has this now. Good cheap tools.-Pete

    JDIC is a *bit* more than that:

    JDIC is broken up into five components and one incubator project:

        * Desktop: Launches desktop programs to open, edit, print, and mail files.
        * Filetypes: Sets desktop file type associations.
        * Browser: Embeds a native web browser (Internet Explorer or Mozilla) into an AWT canvas.
        * Packager: Command-line tools for converting Java Web Start programs into native installers.
        * Tray API: Support for system tray icons and pop-up menus.
        * SaverBeans: System screensavers in Java
  4. * SaverBeans: System screensavers in Java
    I wrote a screensaver in Java using this kit. The configuration UI is a bit rough, but it's pretty cool anyway. The new support for OpenGL screensavers should allow for some pretty savers.
  5. Sorry, I was overly broad in my statement. JNI Wrapper allows you to embed a browser or use their Java browser. It also supports the Tray API.

    -Pete
  6. Introducing JDesktop Integration Components[ Go to top ]

    Tray API: Support for system tray icons and pop-up menus.    * SaverBeans: System screensavers in Java

    As a server-side developer, I find these features particularly attractive. (Sarcasm alert.)
  7. jniwraper browser[ Go to top ]

    Hey, that does look like a nice browser that I did not see before.

    The only thing I use from JDIC is browser but this one looks cool.

    .V
  8. Welcome to 6 months ago...[ Go to top ]

    ...when they were introduced on Sun's website. Am I missing something? We've been using it for a while now.

    And, for client-side development, it is AWESOME, because it further bridges the gap between the "lowest common denominator" Java platform independance and actually making a usable desktop app. Kudos to whoever built it.
  9. Welcome to 6 months ago...[ Go to top ]

    Shouldn't they stop improving Swing and AWT and gives place to SWT?

    Come on. Just look to applications written with SWT: Eclipse, Azurreus others. Why not use the Eclipse Plataform and build on the top of it your business applications?
  10. Welcome to 6 months ago...[ Go to top ]

    Shouldn't they stop improving Swing and AWT and gives place to SWT?Come on. Just look to applications written with SWT: Eclipse, Azurreus others. Why not use the Eclipse Plataform and build on the top of it your business applications?
    SWT is not faster than Swing, and Swing is much more crossplatform than SWT.
    As an example: IntelliJ-IDEA (Swing) is faster than Eclipse.

    What is the point of SWT?
  11. Eclipse != SWT[ Go to top ]

    The point is that you are comparing the performance of two IDEs, and assume that this also compares the performance of the underlying Windows - Toolkits (Swing, SWT). Sorry ... does not work.
  12. Eclipse != SWT[ Go to top ]

    The point is that you are comparing the performance of two IDEs, and assume that this also compares the performance of the underlying Windows - Toolkits (Swing, SWT). Sorry ... does not work.
    I think it gives pretty good rough estimate. I have seen ( even done myself) microbenchmarks which showed Java outperforms C++, but it does not make Java applications overall slower and bigger than C++ ones.
    IDEA and Eclipse have matching complexity, and despite Eclipse is backed by IBM and open source. it still does not perform better than IDEA, which is proprietary and developed by small group of smart individuals.

    That tells something about base UI technologies (SWT, Swing) and respective code and architecture quality.
  13. No OS X support for Browser[ Go to top ]

    If you were excited about a cross-platform browser embedding API, calm down. The JDIC Browser component doesn't do OS X and there is no timeline determined in which it will.

    http://www.javadesktop.org/forums/thread.jspa?threadID=2559&start=0&tstart=0
  14. What?[ Go to top ]

    What's OSX again? :-)

    I know OS/2 and Tandy COCO OS9 but...
  15. No OS X support for Browser[ Go to top ]

    Click on latest download (won't let me paste) and OSX version is same place the Linux/Windoze version is.

    Above you can download OSX (Mac) version.

    FYI JDIC and JDNC will be a part of Java v6 (Mustang).
    .V