FTP's ConnectionManager.getConnectionInfo() will execute AWT code in the calling thread; this makes it risky to perform VFS operations that touch the FTP plugin from a worker thread, since it may run GUI code.
Instead, it should make sure GUI code executes in the AWT thread by using something like SwingUtilities.invokeAndWait() if the current thread is not the AWT thread.
I believe this is fixed in Ftp 1.1? Please close or re-open if it is not.