begin process at 2010 09 03 08:46:59
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive ColdFusion

 > 

Archives

 > 

ColdFusion Studio

 > 

cfftp avec un composant


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

cfftp avec un composant

mardi 6 décembre 2005 à 18:56:51 | cfftp avec un composant

mandaillou

Salut je voudrais faire un cfftp mais en passant par un composant.
J'ai le code suivant:

 
***  main.cfm ***

<cfftp action="open" server="#form.serveur#" username="#form.login#" password="#form.password#" connection="serveur1" timeout="600">
<cfinvoke component="fonction_test" method="ftp"
    action="existsdir" connection="serveur1" directory="edengo_v3/concours">
<cfftp action="close" connection="serveur1">

**** fonction_test.cfc ***
<cfcomponent>
 <cffunction name="ftp">
  <cfargument name="action" required="yes">
  <cfargument name="directory" required="no">
  <cfargument name="connection" required="yes">
     <cfftp action="#action#" connection="#connection#" directory="#directory#">
     <cfset retour=#cfftp.ReturnValue#>
     <cfreturn #retour#>
 </cffunction>

</cfcomponent>

Problème :  il me dit "
The connection attribute you specified, serveur1, is invalid or does not exist " mais si je fais la même chose sans passer par une fonction, ça marche.
Merci

Sylvain

mardi 6 décembre 2005 à 21:36:30 | Re : cfftp avec un composant

lfontaine

Salut,

Peut etre qu'il faut que tu ouvre et ferme la connection dans ton composant. essayes de creer  plusieurs autre function pour ouvrir et fermer ta connection.

Laurent
mercredi 7 décembre 2005 à 11:53:22 | Re : cfftp avec un composant

mandaillou

J'ai essayé ça mais sans plus de réussite

<cfinvoke component="fonction_test" method="ftp" action="open" serveur="#form.serveur#"
 login="#form.login#" mot_de_passe="#form.password#" connection="serveur">

 <cfinvoke component="fonction_test" method="ftp"
    action="existsdir" connection="serveur" directory="edengo_v3/concours">

<cfinvoke component="fonction_test" method="ftp" action="close" connection="serveur">

mercredi 7 décembre 2005 à 14:05:34 | Re : cfftp avec un composant

nickadele

Membre Club Administrateur CodeS-SourceS
c'est une fonction que je n'ai jamais eu l'occasion d'utiliser, mais... selon la logique, tu fais appel à un composant qui lui même fait des actions sur ftp, jusque là je crois que j'ai tout compris... La question que je me pose, est-ce que la fonction cfftp ne doit pas être appelée sur une même page, c'est à dire est-ce que ta page appelante ne perd pas tout simplement la connection? 1 ouverture de la connection, 2 actions divers, 3 fermeture de la connection. Une solution serait donc de passer en paramètre à ton cfc une structure (vecteur) de la liste des actions à faire... ensuite dans ton cfc tu parcours la liste d'actions et selon l'action tu opères. Nickadele
jeudi 8 décembre 2005 à 12:05:43 | Re : cfftp avec un composant

mandaillou

En fait, mon but est d'ouvrir la connection FTP, ensuite j'appelle une fonction qui détermine les actions à effectuer et appelle ma fonction FTP et ensuite je ferme la connection. Je ne peux pas passer toutes les opérations en paramètre d'un coup car elles sont conditionnées par le résultat d'opérations FTP. Je sais pas si j'ai été très clair

Sylvain

jeudi 8 décembre 2005 à 12:20:55 | Re : cfftp avec un composant

lfontaine

Salut et desole de ne pas avoir vu ca avant.

Es tu sur de la maniere dont tu utilises cfinvoke ?
Tes arguments action="existsdir" connection="serveur1" directory="edengo_v3/concours"
doivent etre passe par un tag cfinvokeargument (pas fait gaffe vu que j'utilise peu le cfinvoke pour les cfc)

J'ai ete un peu deraille par ton precedent probleme de conection, en fait je pense que c'est un probleme de syntaxe.

Laurent
jeudi 8 décembre 2005 à 12:29:38 | Re : cfftp avec un composant

lfontaine

ooops desole je raconte n'importe quoi. Je vais aller me coucher moi.
bye
jeudi 8 décembre 2005 à 12:32:42 | Re : cfftp avec un composant

mandaillou

J'ai changé la syntaxe mais j'ai toujours le même problème, il semblerait qu'on perde la connexion en passant par la fonction.

Voici mon code : main.cfm

<cfinvoke component="fct" method="ftp">
 <cfinvokeargument name="login" value="#login#">
 <cfinvokeargument name="serveur" value="#serveur#">
 <cfinvokeargument name="mot_de_passe" value="#password#">
 <cfinvokeargument name="action" value="open">
 <cfinvokeargument name="connection" value="serveur">
</cfinvoke>

<cfinvoke component="fct" method="ftp">
 <cfinvokeargument name="action" value="close">
 <cfinvokeargument name="connection" value="serveur">
</cfinvoke>


mon composant : fct.cfc

<cfcomponent>
 <cffunction name="ftp" returntype="string">
  <cfargument name="login" required="no">
  <cfargument name="mot_de_passe" required="no">
  <cfargument name="serveur" required="no">
  <cfargument name="action" required="no">
  <cfargument name="remotefile" required="no">
  <cfargument name="localfile" required="no">
  <cfargument name="directory" required="no">
  <cfargument name="connection" required="no">
      
   <cfswitch expression="#action#">
   
   <cfcase value="open">
     <cfftp action="open" server="#serveur#" username="#login#" password="#mot_de_passe#" connection="#connection#">
     <cfif #cfftp.Succeeded#>  connection open <br> </cfif>
    </cfcase>
    
    <cfcase value="close">
     <cfftp action="close" connection="#connection#">
    </cfcase>
    
   </cfswitch>
 </cffunction>
</cfcomponent>

Quand je le lance, ma connexion s'ouvre ("connection open " s'affiche") et ensuite j'ai un message d'erreur "The connection attribute you specified, serveur, is invalid or does not exist "

jeudi 8 décembre 2005 à 12:40:42 | Re : cfftp avec un composant

lfontaine

Essayes de definir ta connexion dans une variable de session.

Laurent
jeudi 8 décembre 2005 à 15:15:01 | Re : cfftp avec un composant

nickadele

Membre Club Administrateur CodeS-SourceS
mandaillou, logique ça confirme ce que je disait ci-dessus. au sein d'une même page : 1. ouverture de la connection 2. opération divers 3. fermeture de la connection Toi tu fais : 1. Appel pour ouvrir une connection. 1 bis ouverture de la connection. 2. Appel pour faire des opérations 2 bis opération divers et là tu as certainement comme réponse : connection innexistante!!! Logique où est ta connection? Dans le 1 bis qui n'a pas renvoyé d'objet connection. Même si Coldfusion est très souple, il faut quand même resté dans l'esprit objet. Bàt Nickadele


Cette discussion est classée dans : fonction, connection, composant, cfftp, serveur1


Répondre à ce message

Sujets en rapport avec ce message

CFFTP avec un CFMODULE [ par genjikun ] Bonjour,J'essaye de faire un CFFTP en passant par un CFMODULE !Voici le code : Fichier " test.cfm "<CFMODULE TEMPLATE="Module.cfm" Login="testLogin" P remplissage d'un dropdwon dynamique en fonction du choix de l'utilisateur : [ par Cugel ] Bonjour à tous,Alors voici mon problème : J'ai, dans une base de données Access, trois tables :tblCategories avec les champs categoryid et categorynam Affichage dynamique en fonction de la saisie utilisateur [ par Timwaz ] Lut à tous,Je souhaite afficher de façon dynamique des résultats en fonction de la saisie d'un utilisateur.Je m'explique :Une page de mon intranet aff CFFTP CHMODE CFZIP [ par XnomosX ] Salut ,Voila j'ai besoin de dé-zipper un dossier sur un serveur A pour l'envoyer sur le serveur B ... Jusque la tout vas bien.Sauf qu'une fois dé-zipp connection BD SQL Server impossible [ par manik971 ] Bonjour,J'essaye de connecter ma base de donnees (MS SQL server 2008) avec coldfusion mais j'ai une erreur du type:Connection verification failed for Fonction de recherche [ par Mushcmwa ] Bonjour (bonsoir) a tous, Je développe actuellement un forum en coldfusion, j'arrive au bout mais je me casse la tête depuis quelques heures pour ess Question bete ! comment faire une fonction en ColdFusion ?? [ par c3po ] Désole mais je bloque la dessus !Merci Fonction [ par Pas ] Et au fait il n'est possible de faire de fonction et de classe en ColdFusion par hasard. Merçi d'avance. Calcul d'une ligne avec Access [ par mariochk ] Salut, Existe-t'il une fonction qui calcul d'un coup toute une ligne sur Access (non une colonne). J'ai plusieurs rubriques. Il accepte dans les requê connection CF 5 sous solaris avec BDD SQL server [ par Dskills ] Bonjour.Nous avons monté la configuration suivanteSous Solaris 8Server d'application Coldfusion 5Server WEB Apache 1.3.14Driver ODBC Open RDASous NT4


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Septembre 2010
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
27282930   

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,608 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales