Wicket 1.4 officiellement disponible !


La version 1.4 de Wicket est enfin disponible. Cette version a pour caractéristiques majeure de ne fonctionner qu'à partir de Java 5 car elle introduit et utilise abondamment les Generics. Cela permet d'ajouter le contrôle de type au niveau des API et en particulier dans l'utilisation des modèles.

Toutes nos félicitations à l'équipe Apache Wicket et en particulier à Martijn Dashorst pour la gestion de la release.

Les principales modifications sont :

  • L'interface et les implémentations de IModel utilisent maintenant les Generics
  • Les méthodes getModel() et setModel() sur la classe Component ont été renommées en getDefaultModel() et setDefaultModel()
  • Les modules Spring ont fusionné, le seul jar nécessaire maintenant est wicket-spring.jar
  • Modifications sur plusieurs API afin de bénéficier des fonctionnalités Java 5
  • Les jars Wicket sont maintenant packagés avec des METADATA pour en faire des bundle OSGi

La migration de 1.3 vers 1.4 devrait être assez facile, et un guide de migration est disponible.

Le lien vers le post original, mais voici un petit résumé des changements majeurs de cette nouvelle version.

Lire la suite...

Sortie de Wicket 1.3.7, fin de la branche 1.3.x


La récente publication de Wicket 1.3.7 marque le passage de la branche 1.3.x en mode maintenance : aucune nouvelle fonctionnalité n'y sera plus ajoutée, seuls d'éventuels correctifs de sécurité y seront apportés. Les utilisateurs sont invités à migrer sur la branche 1.4.x qui devient la nouvelle référence.

Liens utiles :

Génération PDF : Wicket + iText


Nous allons voir dans ce billet comment générer un flux PDF depuis une application Wicket.

Pour l'exemple, nous utiliserons la librairie iText et notre application ZenContact.

Lire la suite...

ZenContact 6 : Afficher une liste de contacts


Dans le précédent billet, nous avons créé une liste de deux contacts et les avons stockés au niveau de la classe ZenContactApplication. Nous allons voir dans ce billet comment les afficher et gérer l'affichage html pour le designer graphique. Wicket possède des "Repeaters" permettant de répéter toute balise HTML sur laquelle le composant est "bindé". Nous utiliserons un type particulier de Repeater, le PropertyListView qui va permettre de simplifier le code Java.

Lire la suite...

ZenContact 5 : Présentation du métier


Cette partie n'est pas liée à Wicket et concerne l'introduction de l'objet métier contact, ainsi que d'une façon de le stocker au niveau de l'application. Cela permettra néanmoins de présenter quelques concepts du framework. Une fois ces éléments stockés en mémoire, nous verrons comment les afficher dans le billet suivant.

Lire la suite...

ZenContact 4 : La navigation entre pages


Dans le précédent billet nous avons créé les trois pages de notre application et voulons maintenant pouvoir naviguer de l'une vers l'autre grâce au menu prévu à cet effet. Pour rappel ce menu se trouve au niveau du div représentant le header. Cette fonctionnalité n'est pas suffisante, nous voulons aussi que l'application nous indique la page courante en désactivant le lien du menu permettant d'y accéder.

Lire la suite...

ZenContact 3 : Structuration des pages


Les pages d'une application Web possèdent souvent sur la même structure. Afin d'éviter la redondance de code et de s'assurer de l'uniformité visuel, un système de templating est nécessaire. Nous avons tous utilisé soit sitemesh soit tiles afin de répondre à ce besoin. Les deux technologies nécessitent une configuration XML afin de décrire l'assemblage des pages. En Wicket la gestion de la structure des pages est beaucoup plus simple ! Cela se fait soit par héritage soit par composition.

Nous allons focaliser dans ce billet sur l'héritage et modifier la page d'accueil en conséquence.

Lire la suite...