Hi. Ich möchte mit org.apache.commons.net.ftp.FTPClient einen Bildupload in meiner JSF-Anwendung ermöglichen. Die Datei kommt auch mit der richtigen Größe auf dem Server an, jedoch nur als "Pixelbrei". Das "UploadedFile" kommt aus einem t:inputFileUpload.
Meine Klasse sieht so aus:
Wenn ich den Filetype auf binary setze und ein txt-File hochlade, klappt alles wunderbar. Doch wie bekomme ich die Bilder korrekt auf den Server?
Meine Klasse sieht so aus:
Code:
import java.io.IOException;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.myfaces.custom.fileupload.UploadedFile;
public class upload
{
private final String _locationServer = "/myfolder/";
private UploadedFile _uploadedFile;
private FTPClient _ftpClient = new FTPClient();
public void ftpUpload() throws IOException
{
_ftpClient.connect("server", 21);
_ftpClient.login("user", "pass");
_ftpClient.enterLocalActiveMode();
_ftpClient.changeWorkingDirectory(_locationServer);
_ftpClient.setFileTransferMode(FTPClient.IMAGE_FILE_TYPE);
_ftpClient.storeFile(_uploadedFile.getName(), _uploadedFile.getInputStream());
_ftpClient.logout();
_ftpClient.disconnect();
}
public UploadedFile getFile() { return _uploadedFile; }
public void setFile(UploadedFile uploadedFile) { _uploadedFile = uploadedFile; }
}
Wenn ich den Filetype auf binary setze und ein txt-File hochlade, klappt alles wunderbar. Doch wie bekomme ich die Bilder korrekt auf den Server?
Zuletzt bearbeitet: