philguillard a écrit :
Merci Philippe,
En fait a l'époque ou je me suis decidé d'utiliser le portal j'ai mal
estimé mon besoin, c'est un peu tard, et je me souviens dailleurs que
tu fais partie des gens qui m'ont le plus aidé sur tous ces soucis.
Je comprends, la page du portal est deja presque generée, le coplet
est un cinclude, que je ne remplis jamais avec mon redirect. C'est
pourquoi j'ai tente un redirect sur portal avec un bookmark
rafraichissant mon coplet en question...L'idée était en effet de
changer de page ou pageLabel apres un form...
Dans ce cas, tu peux tenter la chose suivante :
Si ton formulaire n'a pas de validation, ni d'event listener, tu peux le
poster directement sur le pipeline qui rappelle la continuation, ainsi,
la redirection marchera correctement.
Hélàs, si tu as de la validation ou des event-lister ça se complique un
peu (si tu poste directement ton formulaire sur le pipeline en question,
si une erreur de validation se produit, alors tu auras juste le
formulaire d'affiché sans le portail autour !), il faut que tu utilises
ajax pour ton formulaire (les validations et les event-listener sont
exécutés en "backgroud" sans recharger la page, donc sans perdre le portal).
Phil
Philippe Gassmann wrote:
philguillard a écrit :
Bonjour,
Lorsque qu'une fontion flowscript est dans un coplet du portal, une
redirection externe comme ci-dessous m'apporte systematiquement un
null pointer exception sans consequence pour l'utilisateur, mais
dont j'aimerais trouver la cause voir contourner. Sans doute parce
que la fonction flow ne se termine pas par une page pour ce coplet.
Quelqu'un a t-il une idee ? J'ai essaye de rafraichir le coplet
avant ou apres le redirect, terminer la continuation... sans succes.
En fait, tu n'as pas le droit d'effectuer une redirection après que
cocoon ait commencé à envoyer des données dans la réponse HTTP, or,
dans une coplet, tu as déjà commencé à renvoyer des données (éléments
du début de la page comme <html><head>, autres coplets présentes
avant la coplet effectuant une redirection...).
La seule solution : ne jamais faire de redirect dans une coplet.
L'idée de base du portal de cocoon c'est que chaque coplet est
indépendante et donc n'a pas d'effets de bord ni les autres coplets,
ni sur le portal lui même.
D'une manière plus générale, le portail n'est adapté que pour
aggréger du contenu provenant des coplets. Ce "contenu" n'est pas
censé posséder de controlleur autre que le portail lui même (via les
évènement sur les coplets). Du coup, faire du flowscript avec des
continuations ou des forms dans des coplets devient une vrai gageure.
Bonne chance,
--
Philippe GASSMANN
Systèmes d'Information
ANYWARE TECHNOLOGIES
Tel : +33 (0)5 61 00 52 90
Fax : +33 (0)5 61 00 51 46
http://www.anyware-tech.com/
---------------------------------------------------------------------
Liste francophone Apache Cocoon -- http://cocoon.apache.org/fr/
Pour vous desinscrire : mailto:[EMAIL PROTECTED]
Autres commandes : mailto:[EMAIL PROTECTED]