Sortie de Atmosphère 0.7 : Support des WebSockets (HTLM 5) dans Wicket


HTML5 et les websocket

Atmosphere vient d'annoncer une nouvelle version de son framework sur son blog :

Le but du framework est de faciliter l'utilisation du push, de comet et des websockets.

Lire la suite...

Comment rendre ses fichiers Javascript ou CSS dynamiques avec Wicket


Si vous avez l'habitude de rajouter des fichiers Javascript ou CSS à vos pages depuis vos composants Wicket, vous avez sûrement déjà utilisé la méthode getHeaderContribution :

  1. add(JavascriptPackageResource.getHeaderContribution(MyComponent.class, "js/MyComponent.js"));

Ou encore, sur les anciennes version de Wicket :

  1. add(HeaderContributor.forJavaScript(MyComponent.class, "MyComponent.js");

Cependant, les fichiers Javascript (ou CSS) sont ajoutés tel quels. Nous allons voir ici comment personnaliser ces fichiers, en rajoutant des variables à nos fichiers initialement statiques.

Nous allons pour cela utiliser un TextTemplateHeaderContributor à la place de notre HeaderContributor, en passant un modèle contenant la liste de nos variables.

  1. IModel<Map<String, Object>> variablesModel = new AbstractReadOnlyModel<Map<String, Object>>() {
  2.  
  3. private Map<String, Object> variables;
  4.  
  5. public Map<String, Object> getObject() {
  6. if (variables == null) {
  7. this.variables = new MiniMap<String, Object>(3);
  8. variables.put("markupId", MyComponent.this.getMarkupId() );
  9. variables.put("height", calculateHeight() );
  10. variables.put("width", calculateWidth() );
  11. }
  12. return variables;
  13. }
  14.  
  15.  
  16. };
  17.  
  18. add(TextTemplateHeaderContributor.forJavaScript(MyComponent.class, "js/MyComponent.js", variablesModel));

Ensuite, il est facile de récupérer la valeur de nos variables dans notre fichier Javascript :

  1. $(function() {
  2. $("#${markupId}").dialog({
  3. height: ${height},
  4. width: ${width}
  5. });
  6. });

Nous verrons un cas d'application avec les templates Javascript et JQuery dans un prochain article.

Afficher des tableaux sexy avec Wicket


Les tableaux HTML sont plus lisibles lorsque les lignes paires sont facilement différenciables des lignes impaires, par exemple grâce à un fond de couleur différente.
Voyons comment Wicket permet d'industrialiser ce traitement, afin qu'il soit facilement applicable à n'importe quel tableau.

Pour l'exemple, nous afficherons la liste des Locales suportées par la JVM (langage et pays).

Lire la suite...