Java 如何在apache FTPS客户端中使用自定义套接字工厂

Java 如何在apache FTPS客户端中使用自定义套接字工厂,java,ssl,sslsocketfactory,Java,Ssl,Sslsocketfactory,我正在使用FTPClient与FTP服务器通信。它工作得很好 Apache向FTPSClient提供API,以便使用SSL/TLS与FTP服务器通信。但它正在使用自己的插座工厂。因此,我无法访问套接字会话 我想创建自定义套接字工厂,并手动处理套接字会话 请帮帮我。虽然FTPSClient是一个SocketClient,但我发现最好不要将其作为execProt(String)之类的方法调用,甚至FTPS连接逻辑也会对setSocketFactory(SocketFactory)进行内部调用并撤消您

我正在使用FTPClient与FTP服务器通信。它工作得很好

Apache向FTPSClient提供API,以便使用SSL/TLS与FTP服务器通信。但它正在使用自己的插座工厂。因此,我无法访问套接字会话

我想创建自定义套接字工厂,并手动处理套接字会话


请帮帮我。

虽然
FTPSClient
是一个
SocketClient
,但我发现最好不要将其作为
execProt(String)
之类的方法调用,甚至FTPS连接逻辑也会对
setSocketFactory(SocketFactory)
进行内部调用并撤消您的工作

我建议将SSL上下文设置为构造函数的参数,和/或使用方法,如
setEnabledProtocols(String[])
,并为Apache Commons代码将在FTPSClient的生命周期内创建的无数SocketFactory对象设置条件


仅供参考:
TrustManager
对象和
SSLContext
对象可以配置为使用您自己的信任库和/或JVM的默认信任库。

如何处理套接字会话?除了使它失效之外,你没什么可以做的。你需要自己处理而不是使用API。你想对会话做什么?