Hallo,
ich möchte gerne über RMI von einem Server eine Datei an den Client senden lassen. Ich Benutze Rmi, weil ich später über HTTP Tunneln möchte. Hier im Forum habe ich gelesen, dass man dies am einfachsten mit einem byte-array macht. Das hat soweit auch funktioniert, allerdings kann man nur Dateien mit begrenzter Größe versenden.
Daher meine Frage: Wo wäre ein einfacher Weg um die Datei an den Client zu senden. Meine Notlösung wäre ansonsten, dass ich die Datei in einzelne arrays aufsplitte. ich gehe davon aus, dass java hierfür eine methode bereitstellt.
so sieht der Code momentan aus. Die Methode liegt auf dem Server und liefert das Ergebnis an den Client zurück.es handelt sich dabei erstmal nur um tests.
ich hoffe jemand hat eine idee?
ich möchte gerne über RMI von einem Server eine Datei an den Client senden lassen. Ich Benutze Rmi, weil ich später über HTTP Tunneln möchte. Hier im Forum habe ich gelesen, dass man dies am einfachsten mit einem byte-array macht. Das hat soweit auch funktioniert, allerdings kann man nur Dateien mit begrenzter Größe versenden.
Daher meine Frage: Wo wäre ein einfacher Weg um die Datei an den Client zu senden. Meine Notlösung wäre ansonsten, dass ich die Datei in einzelne arrays aufsplitte. ich gehe davon aus, dass java hierfür eine methode bereitstellt.
so sieht der Code momentan aus. Die Methode liegt auf dem Server und liefert das Ergebnis an den Client zurück.es handelt sich dabei erstmal nur um tests.
Code:
public byte[] getFile() throws RemoteException, IOException,
UnsupportedEncodingException, Exception {
try {
File file = new File("C:\\temp\\test2.zip");
FileInputStream fileInputStream = new FileInputStream(file);
byte[] data = new byte[(int) file.length()];
fileInputStream.read(data);
fileInputStream.close();
System.out.println("Datei gelesen " + file.length());
return data;
} catch (Exception e) {
System.out.println(e.getMessage());
return null;
}
}
ich hoffe jemand hat eine idee?