One of the requirements of a story our team recently worked on was to create a fat swing client that would essentially run in the background. The users wouldn’t accept an application that showed up in the task bar. It had to either run as a Windows service or at the very least as an icon in the system tray. Also, though probably 95% of the users would be running Windows it would be nice if this client could operate on OSX and Linux machines as well.
Initially I wasn’t sure what we were going to be able to do. After some searching I discovered that the Windows service option was out of the question unless we wanted to hook in some platform specific code – which didn’t sit well with anyone involved.
Eventually I found something called the Java Desktop Integration Components. The JDIC toolset provides cross platform access to what would otherwise be native desktop components. Things like the system tray (on Windows), or the “Notification Area” (on Linux and OSX), and desktop wallpaper.
Anyway I thought it was kind of cool. Worth a look. Check out the demos.