How to access locally cached WebStart applications

Задача: из Java-приложения получить доступ к локальному кешу WebStart приложений.
Зачем? постараюсь обяснить в последующих постах :)
Решение:

import com.sun.deploy.cache.Cache;
import com.sun.deploy.cache.CacheEntry;
import com.sun.javaws.jnl.LaunchDesc;
import com.sun.javaws.jnl.LaunchDescFactory;
 
import java.io.File;
import java.util.Iterator;
 
public class Main {
    public static void main(String[] args) throws Exception {
        Iterator jnlpIter = Cache.getJnlpCacheEntries(false);
        while (jnlpIter.hasNext()) {
            File jnlpFile = (File) jnlpIter.next();
            File idxFile = new File(jnlpFile.getPath() + ".idx");
            CacheEntry jnlpEntry = Cache.getCacheEntryFromFile(idxFile);
            if (jnlpEntry != null) {
                LaunchDesc desc = LaunchDescFactory.buildDescriptor(jnlpEntry.getDataFile());
                /* ... */
            }
        }
    }
}