Posted on May 8, 2007

Iris – Java One Demo

Iris Logo

Finaly I get to show you all what I have been working on for the last few weeks. Iris is an online photo browsing, editing and slideshow application. It is a smashup of Java Applets and next generation web concepts.


Iris shows the power of modern Java applets, highlighting the following major features of the Java platform:

  • Next-generation web integration: Java applets interoperate well with JavaScript in all major web browsers.
  • Multithreading support in the Java platform and libraries hides network latency from the end user, and increases the application’s throughput.
  • Native desktop integration supports concepts like drag-and-drop "on to the web".
  • The Java platform’s powerful and flexible security model allows true web service mashups to be created which connect simultaneously to many web services.
  • The rich image handling and graphics capabilities of the Java core libraries facilitate development of advanced graphical applets and applications.
  • Dynamic extension of applets: new techniques developed within the past year in the JOGL project allow applets to use OpenGL for 3D graphics, OpenAL for spatialized audio, Java Media codecs, and other extensions previously only available to desktop or Java Web Start applications.

(Note: Iris currently uses the latest Java SE platform features and requires Java SE 6 to run.)

Iris works with the Flickr online photo service. When you navigate to the Iris page, if you have a Flickr account, you can click the "Login" button in the upper right portion of the page to enable uploading of images to your account.

From the main Iris page, enter a Flickr user’s account name to browse their albums. If you don’t have one, you can try "jasper potts", "el richbo", "kenneth russell", or "romainguy" for a few.

Clicking on an album will list the photos it contains. If you’re logged in and viewing your account, you can drag and drop a photo from your desktop on to the "iris" icon on the lower-left corner of the page. You can even drag and drop directly from other applications such as webcam apps. Yes, that’s right, drag and drop on to the web…made possible with Java applets!

What’s really going on is that the remarkable facsimile of a Sun server across the bottom of the web page is a Java applet. It is receiving JavaScript events from clicks on the albums and photos and contacting the Flickr web service to do operations like list the photos in a given album. The rest of the page is HTML. The applet calls back in to JavaScript to update the HTML in the two portions of the web page above it.

Double-clicking a photo or clicking the "Edit photos" button at the bottom of the page will pop up an image editor. You can do various operations like color correction and balancing, rotation, cropping, blurring and sharpening. Note: Be careful when you edit a photo it really changes it on Flickr

From the editor view you can also get a better overview of all of the photos in the album. Clicking the perspective "back" button in the upper right corner (between the left and right arrows) will enable a 3D "display shelf" view where you can breeze through all of the photos in the set. Clicking the same button will zoom back into the image editing view.

Once you’re done editing your images, you can view a slide show of them by clicking the "Slide show" button on the bottom toolbar. You can even make the slide show go full-screen by clicking the full-screen button (again between the left and right arrows). Note also that the slide show has built-in buttons which fade in and out as you hover over the bottom center portion of the slide show view.

What good is Web 2.0 if you can’t share it with your friends? Clicking the "Share" button in the lower right corner will pop up your email client and send an HTML link to people you choose. On any computer with Java 1.4 or later installed, Java Web Start will launch, update the JRE version if necessary, and run the full-screen slide show with no manual software installation.

Java applets…think again!


  • […] Jasper Potts and his team at Sun have worked up some very nice magic with photo display and editing. Iris is an online photo browsing, editing and slide show application. […]

  • […] Jasper Potts put online a small tutorial on how to run Iris, the demo that Richard Bair, Ken Russell and he wrote for a keynote for JavaOne 2007. It’s a great mixup of Swing, applets, HTML and AJAX, a must see! Go check it out! Posted by Romain Guy on May 09 2007 under Java, Swing, UI Design, Web, Conference […]

  • Gath says:

    Wow, this is great! Awesome work Jasper, congratulations to you and the rest of the Iris team !

  • JavaGuy says:

    Demo does not work. Error loading applet on both firefox 2.0 and safari.

  • tanhnhi says:

    I’ve seen the demo video, it’s pretty cute!! But the demo doesn’t work right away on my Mac! I can manage to make it work, but it will not be the case for a normal user! And in my opinion, it’s one of the biggest problems of Java!! Only 70% of applets, Java WebStarts work at first try compare to more than 90% of Flash!! In order to spread Java on desktop, this issue should be resolved.

  • jasper says:

    for the Mac you need Apples Java 6 beta installed and to use Safari. There are some bugs in Firefox Mac that can cause problems.

  • jasper says:

    tanhnhi: There is a lot of work going on to fix the user experience of Java Applets and it will be as good as flash very soon.

  • diego says:

    I tried both FF and IE6 with java se6 and cannot get the thing to work with my account.
    I believe there is something wrong with my account, though.
    I can upload images to it but can find it in the search.
    btw, If I try to login again I get an error.

    It’s just weird getting back to the original screen after login in and not seeing any of your pics.

    Overall cool demo.

  • […] Jasper Potts, a Sun developer, explains Iris, and points us to a video of the product. […]

  • hey it’s great to view the video, but is showing error, seems like a broken link

  • […] Iris – Java One Demo Iris is an online photo browsing, editing and slideshow application. It is a smashup of Java Applets and next generation web concepts. Java applets interoperate well with JavaScript in all major web browsers. Makes flickr edits! (tags: Photos Slideshows Java Flickr) […]

  • Benjamin says:

    It seems that their is the same problem as Aerith concerning the access of the Flickr account which are free. Can’t access to my flickr accound using the search box ( benjamin_pavie )
    Otherwise, as usual with the swing team, beautiful demo…

  • Pär Dahlberg says:

    Great work!
    I usually hate applets, but this demo is *really* nice!

  • Al Rodgers says:

    This was such a crowd-pleaser at JavaOne. I think everyone was blown away by it. Thanks, and please publish more details soon!

  • Bob says:

    Beware: After I ran the slideshow full screen graphics updates such as scrolling pages got very slow and I had to reboot (my drivers are fine; I play OpenGL games all the time).
    Also watch out for another problem: there is a bug in Gecko (Firefox) and a bug in the JRE that combined with AdBlock will freeze your browser when downloading the applet classes. It will also crash your browser if there are problems during classloading. The JRE bug can crash Firefox even without adblock and with the fix for Gecko. The Gecko bug is fixed but not released yet. Sun have probably marked their bug as invalid :(

  • Nicolas CASTEL says:

    Where can i get the IRIS sources? Or information about how this demo was implemented? I tried to access to the project on but it’s closed.

  • jasper says:

    Nicolas: We are working as fast as we can to get through the legal process to open the source code for IRIS. It should be available at as soon as it is approved. Hopefully no longer than a couple weeks.

  • Birkir says:

    The link:
    Is broken. Can you support us with a new one?

  • Francis says:

    This works quite well. At least with the romain gallery it did pop quite nicely. I pray all the bugs get worked out soon cause I see Applets on the way back into the game and I think this will be one of the starting points.

    Suggestion: I think you can use a little HTML, Javascript and CSS magic to spice up the loading of the page. The lower bar at the bottom took the longest to load and I think using some CSS and Javascript you can show something to indicate loading. That end remains blank for too long.

    Also I think a nice large LOADING indicator in the central white section might also help. Applets work great but we will need to spice up their load time, and indication. And I thinks for now, since the bugs havent been worked out by SUN, we can just use HTML and CSS.