Laurent Perez wrote:
C'est du design en direct et je ne l'ai pas testé, mais ça devrait faire
l'affaire !

Ok, j'ai un peu de mal à suivre :) .. tu voulais dire quelque chose
comme (dans du flow) :

function giveResolver(){
var res = 
cocoon.getComponent(Packages.org.apache.cocoon.environment.SourceResolver.ROLE);
myBean.setResolver(res);
}

et dans mon bean :

public void setResolver(CocoonComponentManager ccm){
Source s = null;
try {
            s = ccm.resolveURI("cocoon:/pattern.xml");
}
catch(Exception e){
log.error(e);
}
}

Je proposais une approche un peu plus compliquée, mais qui fonctionne en dehors du flowscript. Effectivement, si c'est seulement dans le cadre du flowscript, cette approche est bonne aussi (et plus simple).

ce qui me gêne dans cette approche (même si ça peut fonctionner),
c'est que le flow délivre à Spring un resolver à chaque appel de
giveResolver, ya-'il un moyen élégant d'éviter ça ?

Oui, en le faisant une seule fois au chargement du script :


function init() {
   var resolver = cocoon.getComponent(SourceResolver.ROLE);
   var springContext = ....
   var bean = springContext.get("myBean");
   bean.setResolver(resolver);
};

init();

function fonctionFlowscript() {
   .....
}


Sylvain

--
Sylvain Wallez                        Anyware Technologies
http://people.apache.org/~sylvain     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]

Répondre à