Richfaces: Optimisation des reRender
Bonjour à tous !
J'ai actuellement 2 soucis non bloquant mais assez génant, je voudrai savoir si d'autres personnes on déjà eu ces problèmes. Visiblement, je n'ai pas trouvé de problème similaire dans le forum. Je précise que mes solutions fonctionnent mais sont loin d'être élégantes
1er soucis :
Tout d'abord, j'ai un bouton :
Code:
1 2
| <a4j:commandButton value="Ajouter" action="#{monController.ajouter}" reRender="ajoutPanel">
</a4j:commandButton> ----> Ce bouton modifie le boolean "monController.visible" |
Pourquoi suis-je obligé de faire
Code:
1 2 3 4
| <a4j:outputPanel id="ajoutPanel">
<a4j:outputPanel rendered="#{monController.visible}">
...
</a4j:outputPanel> |
et non
Code:
1 2 3
| <a4j:outputPanel id="ajoutPanel" rendered="#{monController.visible}">
...
</a4j:outputPanel> |
pour que le click sur mon bouton fasse apparaitre le panel ?
2eme soucis dans la continuité du 1er :
j'ai une rich:datatable dans un panel, un bouton et des champs dans un autre panel.
Pourquoi est ce que lorsque je fait un rerender sur le panel contenant mes champs et mon bouton, ma datatable est également rechargé ?
Au final, ça fonctionne bien entendu... Mais le nombre de requete sur la base est grandement augmenté.
J'aimerai que SEUL mon panel avec mes champs et mon bouton soit rafraichis.
J'espère être assez clair dans mes explications. Si tel n'est pas le cas, j'ai trouvé quelqu'un ayant un problème similaire, il explique peut être mieux que moi:
http://www.seamframework.org/41028.lace
Merci d'avance à ceux qui prendrons le temps de m'aider.
David