Bonjour,

je ne sais pas trop comment résumer ma question, d'où le titre peu clair. Je m'explique donc...

Je dois pour les besoins d'un projet JSF "brancher" une action javascript (*) pour l'ensemble de mes actions réalisées sur le site : chaque fois que quelqu'un clique sur un certain type de bouton d'action (h/a4j:commandLink), je veux qu'à l'issue (réussie!) de l'action le script soit exécuté.
(*) elle m'est fournie telle qu'elle, et je ne peux donc pas changer ce point

Basiquement, ça ressemble à qqchose du genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<a4j:commandlink action="#{monBean.doSomething}" oncomplete"MonScript()"/>
.. sauf que je pense qu'on voit immédiatement où le bât blesse : si mon action renvoie une règle de navigation vers une autre page (cf ex ci-dessous), l'événement oncomplete n'est jamais déclenché (ou s'il l'est, il part dans le vent).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
public final String doSomething(){
// plein de choses
//...
    return "viewAccueil";
}
Je ne peux pas non plus passer par le onclick car je veux être certain d'avoir passé la phase de validation....

Je suis donc face à un problème : je voudrais insérer cette action JS dans tout le site, tout en en limitant l'impact; je vois bien des solutions à partir de paramètres passées via la session, ou de boutons cachés, ou en changeant tout le site afin de supprimer des actions la règle de redirection... mais l'impact sur un projet -qui est actuellement en phase de production- est énorme. Je dois donc trouver l'Astuce qui me permettra de brancher ce script de la façon la moins invasive possible.

J'espère que mon explication et ma question étaient claires. Si vous avez des suggestions, je suis donc preneur!

Merci d'avance.