如何配置 Apache FTPFileSystem java class 以使用 FTPSClient 而不是 FTPClient
How can I configure Apache FTPFileSystem java class to use FTPSClient instead of the FTPClient
我在我的应用程序中使用 Apache Commons 库访问 FTP/FTPS 上使用的文件。
该应用程序的架构不允许启动 FTPClient
,在我的情况下,我需要使用 Apache FTPSClient
.
该界面只允许我传递文件路径、配置和 FileSystem
implementation。
是否有 属性 设置或其他方法来配置 FTPFileSystem
以使用 FTPSClient
而不是 FTPClient
?
FTPFileSystem
不支持 FTPS。它无法创建 FTPSClient
.
您应该根据 FTPFileSystem
创建您自己的 FileSystem
实现(更改 open
的实现),您将客户端初始化为 FTPSClient 而不是FTP 客户。即:
FTPSClient client = new FTPSClient();
您可以使用以下方法将其与 ftps://
网址相关联:
conf.set("fs.ftps.impl", "com.myproject.MyFTPSFileSystem");
您可能需要在下面设置 属性 客户端才能进入本地被动模式:
conf.set("fs.ftp.data.connection.mode", "PASSIVE_LOCAL_DATA_CONNECTION_MODE");
我在我的应用程序中使用 Apache Commons 库访问 FTP/FTPS 上使用的文件。
该应用程序的架构不允许启动 FTPClient
,在我的情况下,我需要使用 Apache FTPSClient
.
该界面只允许我传递文件路径、配置和 FileSystem
implementation。
是否有 属性 设置或其他方法来配置 FTPFileSystem
以使用 FTPSClient
而不是 FTPClient
?
FTPFileSystem
不支持 FTPS。它无法创建 FTPSClient
.
您应该根据 FTPFileSystem
创建您自己的 FileSystem
实现(更改 open
的实现),您将客户端初始化为 FTPSClient 而不是FTP 客户。即:
FTPSClient client = new FTPSClient();
您可以使用以下方法将其与 ftps://
网址相关联:
conf.set("fs.ftps.impl", "com.myproject.MyFTPSFileSystem");
您可能需要在下面设置 属性 客户端才能进入本地被动模式:
conf.set("fs.ftp.data.connection.mode", "PASSIVE_LOCAL_DATA_CONNECTION_MODE");