upoad analyse - Java - Programmation
Marsh Posté le 18-03-2008 à 15:56:11
Sans code c'est pas facile de deviner mais je vais essayer quand même.
J'imagine que pour écrire tes fichiers côté serveur tu utilises une classe "buffeurisée" (style BufferedOutputStream) et tu ne fais pas de flush() explicite donc rien ne garanti que les données seront écrites sur le disque aussitot écrite dans l'OutputStream.
Je ne sais pas si c'est clair mais essaye de mettre un flush à la fin du traitement de chaque fichier et dis nous si ça change quelque chose.
Marsh Posté le 18-03-2008 à 17:55:35
il lit le fichier sur le serveur avec BufferedInputStream(new FileInputStream ...
inputStream.read
inputStream.close
outputStream.write
outputStream.flush
il y a bien un flush, peut etre au niveau des caches du serveur tomcat??
Marsh Posté le 18-03-2008 à 21:27:01
j'ai ecrit une betise
l'applet prendre un fichier de mon bureau
il le lit et ensuite l'ecris sur le serveur
Marsh Posté le 19-03-2008 à 18:11:44
salut
si je rajoute une alert javascript, je clique et le chargement se fait bien mais c'est qu'une question de temps si je met un time out 1s ça suffit pas je comprends pas comment faire????
Marsh Posté le 20-03-2008 à 11:54:09
bon il faut bloquer le rafraichissement tant que le upload coté serveur n'est pas fini, pour cela envoyer des requetes au serveur pour savoir si celui ci est fini ou non
Marsh Posté le 18-03-2008 à 14:48:43
Bonjour
Je suis à la recherche de la cause d'une anomalie,
J'ai un applet qui fait un upload de plusieurs fichiers, les fichiers sont bien uploadés mais à la sortie de l'applet le rafraichissement de la page web se fait par du javascript.
L'erreur est : les fichiers ne sont pas tous affichés, c'est aléatoire, si je rafraichis la page avec F5 tous les fichiers sont bien affichés.
Dans l'applet il y a deux thread, un qui fais le upload l'autre l'affichage d'une barre progress, ce que je vu c'est si je prolonge le wait juste avant l'exit de l'applet, il y a plus de fichiers affichés proportionnellement au nombre de minutes que je met.
Je ne peux me permettre de mettre un wait long et je ne comprends toujours pas d'où vient le problème avez vous des pistes, j'ai pas bien compris comment fonctionnait ces requetes??