Bonjour à tous !
La réponse se trouve peut être déjà sur le forum ou dans la FAQ, mais ce que j'y ai trouvé ne s'applique a priori pas à mon cas...
Peut être est-ce aussi parce que je ne prends pas le problème par le bon bout
Quoi qu'il en soit, voici ce que je souhaite faire :
Mes page JSP/JSF ne doivent afficher des images que sous certaines conditions.
Ces images sont différentes dans chacune de mes pages et sont générées au besoin.
Je sais si j'affiche ou non l'image en vérifiant des trucs dans ma partie métier, ces "trucs" pouvant changer d'une minute à l'autre, bien entendu.
(Et si je ne peux pas afficher l'image, j'affiche autre chose, la condition d'affichage de cet autre chose étant bien entendu l'opposé de celle de la l'image).
J'utilise l'attribut rendered pour décider si j'affiche ou non l'image. La question est : quoi mettre dans ce rendered...
Voici comment je fonctionne actuellement (pas beau) :
Quel est le fonctionnement à adopter en JSF (j'apprends un peu sur le tas là...) ??
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 <% UnBeanUtil l_ubu = (UnBeanUtil) session.getAttribute("unBeanUtil"); session.setAttribute("isOkForImage1",l_ubu.isOkForImage("1")); session.setAttribute("isOkForImage2",l_ubu.isOkForImage("2")); session.setAttribute("isOkForImage3",l_ubu.isOkForImage("3")); session.setAttribute("isOkForImage4",l_ubu.isOkForImage("4")); %> [...] <h:graphicImage styleClass="unStyle" value="/image?imageType=1" rendered="#{isOkForImage1}"/> [...] <h:graphicImage styleClass="unStyle" value="/image?imageType=2" rendered="#{isOkForImage2}"/> [...] <h:graphicImage styleClass="unStyle" value="/image?imageType=3" rendered="#{isOkForImage3}"/> [...] <h:graphicImage styleClass="unStyle" value="/image?imageType=4" rendered="#{isOkForImage4}"/>
- Passer des <f:param value....> ne s'applique pas à mon cas je pense, puisque je devrais passer plusieurs fois le paramètre.
- Créer une fonction "isOkForImage()" par image n'est pas une solution satisfaisante pour moi, je préfère avoir quelque chose de générique :-)
Merci !
Partager