繁体   English   中英

Java:使用sftp从远程位置下载文件

[英]Java : Downloading file from a remote location using sftp

单击超链接时,我必须使用SFTP下载位于远程位置的文件。 我正在使用JBOSS 5.1作为我的服务器并使用struts2。 我已经实现了以下代码,我发现ConsumerTemplate的receiveBody()将作为null出现? 有人可以指导我解决上述问题吗?

代码:

CamelContext ctx = new DefaultCamelContext();
                ConsumerTemplate consumer = ctx.createConsumerTemplate();
                String camel_ftp_uri = MessageFormat.format(CAMEL_FTP_PATTERN, ftp_mode, ftp_user, ftp_address, ftp_dir, ftp_options);
                System.out.println("camel_ftp_uri ::: "+camel_ftp_uri);

                Object obj= consumer.receiveBody(camel_ftp_uri);
                System.out.println("obj  ::"+obj);

当打印camel_ftp_uri时:camel_ftp_uri :::

ftp://ccc_uat1@1x.xxx.xx.xxx//from_ccc/file.txt?disconnect=true

我在SOF中引用了以下链接:

如何通过SFTP从服务器检索文件?

提前致谢

您必须使用Camel FTP组件为ftp uri配置一个起始目录,然后提供要下载的文件名作为单独的参数。 您做错的是起始目录是文件名。

这个

ftp://ccc_uat1@1x.xxx.xx.xxx//from_ccc/file.txt?disconnect=true

应该改为

ftp://ccc_uat1@1x.xxx.xx.xxx//from_ccc/?disconnect=true&fileName=file.txt

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM