1

FTP または SFTP ファイルへの一般的な実装に Apache Commons VFS2 API (バージョン 2.0) を使用しています。FTP 宛先として仮想ディレクトリを使用するまでは、うまく機能していました。FileObject から OutputStream を取得しようとすると、NullpointerException が発生します。

...

DefaultFileSystemManager fileSystemManager = new DefaultFileSystemManager();
fileSystemManager.addProvider("ftp", new FtpFileProvider());

FileObject remoteObject = fileSystemManager.resolveFile(<FTP_URL>, null);

FileObject tempObject = fileSystemManager.resolveFile(remoteObject, "ftpFile.txt");

if(!tempObject.exists()){
        tempObject = fileSystemManager.createVirtualFileSystem(tempObject);     
}
//No file created by above actions so below gives null
OutputStream outputStream = tempObject.getContent().getOutputStream();

IOUtils.copy(inputStream, outputStream);

...

4

0 に答える 0