cocoon-users-fr mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jean-Christophe Kermagoret <...@babelobjects.com>
Subject Re: Rapide question sur le file upload.
Date Wed, 30 Mar 2005 13:39:29 GMT
Bonjour,
l'upload fonctionne très bien (en tout cas une fois programmé et installé)

Voilà qques lignes de code qui fonctionnent sur BlueXML :

if ((null != this.getForm().lookupWidget("newupload"))
      &&(null != this.getForm().lookupWidget("newupload").getValue()))     {
   var aPart = this.getForm().lookupWidget("newupload").getValue();
   write(aPart, "C:\tmp\toto");
}

où write est défini comme ci-dessous (attention à tester l'existence du 
fichier et lancer une exception au cas où)

function write(part, targetFilename) {
	var srcFile = new java.io.File(part);
	var targetFile = new java.io.File(targetFilename);

	targetFile.getParentFile().mkdirs();
	srcFile.renameTo(targetFile);
	return targetFilename;
}

As-tu utilisé la console de débogage javascript ? Ca te permet de mettre 
des points d'arrêt et de suivre l'état des variables, si elles sont 
définies ou pas, ...

Bonn chance :-)

JC

Aurélien DEHAY a écrit :
> Bon.
> 
> Je dois avouer que l'upload est un grand mystère pour moi dans Cocoon.
> J'ai lu pas mal de doc sur le wiki et dans les exemples, mais il n'y a
> rien de vraiment concret en fait. J'ai retouché le flowscript
> upload_example.js (celui des exemples), mais ça ne fonctionne pas, dans
> quel que sens que je tourne le truc.
> 
> Je ne cherche pas à faire quelque chose de compliqué, mais juste
> déplacer le fichier uploadé.
> 
> Voilà ce que je fais:
> 
> function upload() {
>     importClass(Packages.java.io.File);
>     var form = new Form("forms/upload_model.xml");
>     var k = form.showForm("upload-display-pipeline");
> 
>     k.invalidate();
> 
>     var uploadWidget = form.lookupWidget("upload");
>     var uploadedFile = uploadWidget.getValue();
>     var file = new File(uploadedFile.getHeaders().get("filename"));
>     file.renameTo(new File("pika"));
> .............
> }
> 
> 
> J'ai beau mettre ce que je veux dans le "pika", rien, nul part, le
> fichier reste dans le WEB-INF/work/upload-dir (au moins ça, ça marche).
> J'ai lu dans le wiki que certains redéveloppaient des classes pour faire
> ça (en particulier dans
> http://wiki.apache.org/cocoon/FileUploadsWithFlow même s'il semble que
> ce soit obsolète pour le >=2.1.6).
> 
> La solution serait donc-t-elle d'utiliser les Input/Output Streams pour
> faire un renommage/copie de fichier?
> 


-- 

Jean-Christophe Kermagoret
jck@BabelObjects.Com



---------------------------------------------------------------------
Liste francophone Apache Cocoon -- http://cocoon.apache.org/fr/
Pour vous desinscrire : mailto:users-fr-unsubscribe@cocoon.apache.org
Autres commandes : mailto:users-fr-help@cocoon.apache.org


Mime
View raw message