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]

Répondre à