Je viens de perdre une demi heure à me casser les dents sur un truc très stupide. Je voulais donc en parler rapidement ici, peut être que ça vous épargnerait de perdre du temps dessus un de ces jours.
Ne jamais utiliser <wicket:container> avec l'ajax !!!!
J'ai mis dans le html :
<wicket:container wicket:id=details"></wicket:container>
Côté Java, j'y avais associé un EmptyPanel (initialement) :
add(new EmptyPanel("details").setOutputMarkupId(true));
Et je voualis mettre à jour son contenu via ajax suite à un clic sur un autre élément de la page :
PersonDetailsPanel personDetailsPanel = new PersonDetailsPanel( "details", new Model<Person>(p)); personDetailsPanel.setOutputMarkupId(true); addOrReplace(personDetailsPanel); if (target != null) { target.addComponent(new PersonDetailsPanel( "details", new Model<Person>(p)).setOutputMarkupId(true)); }
A l'exécution, j'obtiens un comportement bizarre : Au premier clic, ça met à jour la page html, mais les clics suivants bien que traités côté serveur ne mettent pas à jour le panel.
D'autres fois, même le premier clic ne fonctionnait pas.
Pour finir, je tiens à adresser mes remerciements les plus sincères à la console «Ajax Debug» de Wicket qui m'a permis de résoudre ce problème ! 
wicket:container pour mettre à jour son contenu en ajax car c'est une balise qui disparait lorsque vous passez vos applications wicket en production (deployment) : si la balise disparait, wicket ne saura pas mettre à jour sont contenus en ajax.wicket:container, il est indiqué qu'il ne faut pas utiliser une telle balise pour de la maj en ajax :pVous devez être identifié pour poster un commentaire.
Ce blog tourne autour des nouvelles technologies dans le monde Java, tel que Wicket, Eclipse, JSF, Facelets, JPA, Spring, etc. mais aussi de choses moins classiques comme Scala par exemple !
| Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 |
Copyright © 2000-2012 - www.developpez.com