3

Apache FTPClient を使用すると、通常、次のステートメントを使用して接続できます。

FTPClient client = new FTPClient();
client.connect("ftp.myhost.com");
client.login("myUsername", "myPassword");
client.changeWorkingDirectory("/fileFeed");
client.setFileType(FTPClient.BINARY_FILE_TYPE);
client.setFileTransferMode(FTPClient.BLOCK_TRANSFER_MODE);

上記は正常に機能しますが、FTP サイトに接続するには、プロキシ サーバーを使用する必要があります。私が得た指示は、プロキシ サーバーに接続し、ユーザー名で実際の ftp サーバーを指定する必要があるというものです。したがって、ログオンするには、次の詳細を使用して接続します。

ftp         ftp.myProxyServer.com
username    myUsername@ftp.myhost.com
password    myPassword

コマンド プロンプトを使用して直接接続しようとしましたが、ftp.myProxyServer.com ホストに接続でき、ホスト ユーザー名として myUsername@ftp.myhost.com を指定すると、目的の ftp サイトに転送されます。問題は、上記のタイプの接続が Apache FTPClient を使用する Java で受け入れられないことです。

FTPClient client = new FTPClient();
client.connect("ftp.myProxyServer.com");
client.login("myUsername@ftp.myhost.com", "myPassword");
client.changeWorkingDirectory("/fileFeed");
client.setFileType(FTPClient.BINARY_FILE_TYPE);
client.setFileTransferMode(FTPClient.BLOCK_TRANSFER_MODE);

不足しているものはありますか、それとも上記が機能しませんか? 直接接続してみましたが、うまくいきました。

4

1 に答える 1