Java: Probleme mit dem FTP

Guten Morgen meine Freunde der Nacht,

ich arbeite ja bekanntlich noch an meiner kleinen Toolbox. Heute bin ich auf ein weiteres Problem gestoßen auf das ich erst einmal testen darf: Manche Dateien werden per storeFile() verschoben, manche nicht. Hat möglicherweise mit der Aneinander-Reihung von Daten zu tun, aber das ist bis jetzt lediglich eine Vermutung. Ich lasse jetzt mal den Reply vom FTP-Server ausgeben und schaue mal, was hier falsch laufen könnte.

Außerdem habe ich einen (kleinen, aber miesen) Fehler behoben; wenn ich nach dem Upload die Daten lösche, sollte ich eventuell auch darauf prüfen, ob der Upload funktioniert hat, ansonsten werden die Daten einfach gelöscht und niemand hat sie mehr 😀

Update 20.05: Nachdem die Server ausgefallen sind, konnte ich erst einmal nicht an der Toolbox weiterarbeiten. Das Problem mit der storeFile()-Aneinanderreihung durch die Threads hat sich „gelöst“. Beim Upload wird jeweils geprüft ob der Nutzer angemeldet ist, was auch nötig ist, wenn lange Zeit nichts hoch-geladen wurde. Wenn allerdings mehrere Threads in der Überprüfung landen und einer sich schon angemeldet hat, können es die anderen Threads nicht mehr, da nur ein Nutzer vorhanden, und landen in einem „Socket write error“; zumindest meistens.

Ich habe hier einfach den Pool auf eins gesetzt. Dann gibt es nur einen Thread der einen Stack abarbeitet. Dadurch werden alle Dateien nach einander verschoben. Eine andere Möglichkeit kenne ich nicht und werde ich wohl erst einmal nicht benötigen. Bei Verschiebungen in einem normalen Dateisystem werden keine Anmeldungen benötigt und daher kann ich dort so viele Threads aufmachen wie ich Lust habe (zumindest in der Theorie).

Mal schauen welche Probleme mich noch erwarten 😉

Java-Programmierung

Guten Morgen meine Freunde,

durch mein Studium bin ich nun in den Kontakt mit Java gekommen und es hat mich wohl infiziert. Irgendwie mag ich die Sprache. Und mit Hilfe von JetBrains IntelliJ IDEA habe ich auch Spaß am Programmieren selbst, auch wenn ich mir manchmal einen Kollegen wünschte, der sich das programmierte einmal anschauen könnte.

Momentan programmiere ich an einer Art MoveCopy / FTP – Tool herum. Dateien sollen in der Regel von A nach B kopiert werden. Als solches erst einmal kein Problem. Allerdings gibt es hierbei ein paar kleine Schwierigkeiten:

  • eine while-Schleife bringt es nicht wenn dauernd Daten kopiert werden sollen
    • Wie kann ich denn ohne Schleife erstellte Daten kopieren
  • (Was ist mit mehreren Zielen?)

Dafür gibt es aber auch Lösungen:

Weiterlesen