Per l'interazione con diverse funzioni avanzate del sistema operativo in uso, mi trovo bene ad utilizzare
JDIC
The JDesktop Integration Components (JDIC) project aims to make Java™ technology-based applications ("Java applications") first-class citizens of current desktop platforms without sacrificing platform independence. Its mission is to enable seamless desktop/Java integration.
JDIC provides Java applications with access to functionalities and facilities provided by the native desktop. It consists of a collection of Java packages and tools. JDIC supports a variety of features such as embedding the native browser, launching the desktop applications, creating tray icons on the desktop, registering file type associations, creating JNLP installer packages, etc. Many new features are contributed as incubator projects from the community.
In particolare, a parte le cose davvero "fancy" come l'integrazione del browser predefinito in una finestra (JFrame) o i desktop multipli, ha un sacco di cose "nascoste" come l'apertura /stampa di file (doc, pdf, xls etc etc), la creazione in pochi click di tray-icons e relativi menu e altre chicche che fanno risparmiare tonnellate di codice e brutti pomeriggi.