J'ai une collection de documents sur exist. A chaque document est associé un identifiant (mon attribut) généré automatiquent par exist. Je veux à partir du nom du document (récupéré depuis un formulaire) retrouvé dans ma base l'identidiant qui lui est associé. Pour cela j'ai procédé comme suit: 1. Récupérer le nom du document dans le flowscript var paramNomDoc = form.getChild("nomDoc").getValue();
2. Ensuite je fais une requete xquery ds ma base: cocoon.sendPageAndWait("getUserId.xq",{nom: paramNomDoc}); le pipeline: <map:match pattern="getDocId.xq"> <map:generate type="xquery" src="xquery/getDocId.xq" > <map:parameter name="nom" value="{flow-attr:nom}" /> </map:generate> <map:serialize type="xml"/> </map:match> fichier xq: xquery version "1.0" encoding "ISO-8859-1"; <identifiants> { for $doc in collection("/societe/document")/document where $doc/nom = $nom return <identifiant> {$doc/@id} </identifiant> } </identifiants> 3. J'affiche la valeur de l'id par: print(cocoon.request.getAttribute("id")); Je crains aussi que l'exécution de mon flowscript soit arrétée apres le sendPageAndWait càd qu'il m'affiche sur le navigateur le fichier xml. Est ce que cette démarche est bonne? --- Sylvain Wallez <[EMAIL PROTECTED]> a écrit : > gueye weuz wrote: > > J'appelle le pipeleline parce que le resultat je > > l'obtiens à la suite d'une requete xquery. > > J'ai essayé d'utiliser > > cocoon.request.getAttribute("monAttribut")apres un > > sendPage(monURI) et j'obtiens: > > 1. un 'null" dans le console cocoon. > > > Qui est-ce qui positionne cet attribut de requête ? > > > 2. une exception: > "java.lang.IllegalStateException: > > Pipeline has already been processed for this > request". > > > > Hmm... il doit y avoir un deuxième sendPage(). La > stacktrace devrait te > donner l'emplacement de cet appel. > > Sylvain > > -- > Sylvain Wallez Anyware > Technologies > http://bluxte.net > http://www.anyware-tech.com > Apache Software Foundation Member Research & > Technology Director > > > --------------------------------------------------------------------- > Liste francophone Apache Cocoon -- > http://cocoon.apache.org/fr/ > Pour vous desinscrire : > mailto:[EMAIL PROTECTED] > Autres commandes : > mailto:[EMAIL PROTECTED] > > ___________________________________________________________________________ Nouveau : téléphonez moins cher avec Yahoo! Messenger ! Découvez les tarifs exceptionnels pour appeler la France et l'international. Téléchargez sur http://fr.messenger.yahoo.com --------------------------------------------------------------------- Liste francophone Apache Cocoon -- http://cocoon.apache.org/fr/ Pour vous desinscrire : mailto:[EMAIL PROTECTED] Autres commandes : mailto:[EMAIL PROTECTED]