-
Navigation et facelets
Bonjour,
Je rencontre un problème de navigation sur un cas un peu particulier dans le cadre de mon projet.
Mon environnement est le suivant:
- Websphere 7.0
- RAD 7.5
- JSF 1.1
- Icefaces 1.8.2
Pour simplifier j'ai 4 pages jspx
- Un header H.jspx
- Un premier contenu A.jspx
- Un deuxième contenu B.jspx
- Un template H.jspx
J'ai défini la navigation dans le faces-config.xml d'une page A.jspx vers B.jspx.
A.jspx et B.jspx sont une composition qui référence le template T.jspx.
T.jspx définit deux zones : une qui fait un <ui:include src="H.jspx"> et une autre qui fait un <ui:insert name="content"> qui est défini dans A.jspx et B.jspx
Jusque là, tout va bien, la navigation fonctionne. Le problème est que j'ai une contrainte supplémentaire (ce serait trop facile sinon) qui dit que mon header H.jspx ne doit pas être rechargé en même temps que mon contenu.
Est-ce possible de le faire? Et comment?
Merci :)
-
Non ce n'est pas possible, la navigation est envoie toute la page, donc le header avec, mais, si tu utilise le cache de ton serveur, les ressources static ne seront pas reloader.
Sinon ce n'est pas une navigation qu'il faut faire, mais, des requêtes ajax et un rafraichissement du contenu seulement.
-
Merci pour ta réponse. Mais comme je débute un peu en jsf, peux tu m'indiquer comment déclarer une ressource statique pour mon header ou me donner un lien vers un tuto l'expliquant?
Merci
-
ressource statique c'est une image par exemple, tout ce est chargé une fois..
-
Ok, comme mon header est un contenu dynamique que je ne veux pas régénérer tout le temps, je suis coincé. :( Il ne me reste que l'utilisation d'ajax dont tu parlais.
-
Je me permets de relancer la discussion car j'ai pu éliminer la contrainte du rechargement du header. donc je retente d'utiliser les règles de navigation. Pour information, mon header me permet de changer l'objet qui est affiché : passer des infos d'un objet X à celles d'un objet Y.
Par contre je rencontre deux nouveaux problèmes en utilisant les règles de navigation:
- après être passé à la page B, si je redemande la page A.jspx, il continue à m'afficher la page B.jspx. J'ai ajouté <redirect/> à ma règle pour résoudre ce point mais je ne comprends pas pourquoi j'y suis obligé
- dans mon header, j'ai un lien vers la page A.jspx (par un mot clé bien entendu) pour l'objet Y. Si je suis passé à la page B.jspx, il reste dessus et pourtant il a bien chargé les infos de l'objet Y.
J'ai bien ajouté la règle me permettant d'aller de la page B.jspx vers la page A.jspx mais cela ne fonctionne pas. Que dois-je faire?
J'ai tenté sans succès d'ajouter une règle depuis H.jspx vers A.jspx