What is the best method of performing an scp transfer via the Java programming language? It seems I may be able to perform this via JSSE, JSch or the bouncy castle java libraries. None of these solutions seem to have an easy answer.
The openssh project lists several Java alternatives, Trilead SSH for Java seems to fit what you're asking for.
Take a look here
That is the source code for Ants' SCP task. The code in the "execute" method is where the nuts and bolts of it are. This should give you a fair idea of what is required. It uses JSch i believe.
Alternatively you could also directly execute this Ant task from your java code.
I ended up using Jsch- it was pretty straightforward, and seemed to scale up pretty well (I was grabbing a few thousand files every few minutes).
I use this SFTP API which has SCP called Zehon, it's great, so easy to use with a lot of sample code. Here is the site http://www.zehon.com
edtFTPj/PRO supports SCP transfers (as well as SFTP, FTP and FTPS).
For file transfer over SCP/SSH you can try JFileUpload.
http://www.jfileupload.com/products/scp/index.html
It can upload, download and browse remote folders with JDiskExplorer add-on.