Archives de l’auteur : karbos

Création de fichier temporaires

Lors de certains tests unitaire avec JUnit, il est nécessaire de créer des fichiers temporaires.
C’est tellement facile en Java, que nos tests unitaires créaient 1Go de fichiers temporaires par heure sur notre plateforme d’intégration continue.

Voici 2 pattern pour s’assurer que ces fichiers seront bien supprimés en fin de test :

1. TemporaryFolder avec JUnit 4 et plus

1
2
3
4
5
6
7
@Rule
public TemporaryFolder testFolder = new TemporaryFolder();
@Test
public void unTest () {
   File tempFile = testFolder.newFile();
   ...
}

2. Suppression manuelle

1
2
3
4
5
public void uneMethode () {
   File tempFile = File.createTempFile(prfix, suffixe+extension);
   ...
   tempFile.deleteOnExit();
}

Sous Windows, les fichiers temporaires sont créés dans @%TEMP%@ (C:\Users\{NAME}\AppData\Local\Temp), sous Linux, ils sont créés dans @/tmp@.

Failles de sécurité dans les applications Web

Tous les 3 ans, l’OWASP (Open Web Application Security Project) publie un « Top 10″ des failles rencontrées par leurs outils dans les applications Web. Comme la dernière version est sortie le 12 juin 2013, je vous propose une petite synthèse et quelques liens pour aller plus loin. Lire la suite

Faire collaborer gwt-maven-plugin, m2e (Maven) et Google Plugin (GWT)

D’après moi, un seul plugin aurait suffit : gwt-maven-plugin. Mais il en existe d’autres, notamment m2e (Maven 2 pour Eclipse) et GPE (Google Plugin Eclipse).
La problématique de ce billet n’est pas de dire si ils sont bien ou pas, mais de fournir une méthode pour utiliser les trois ensemble de manière complémentaire et sans qu’ils entrent en conflit.
Lire la suite

GWT et l’historique de navigation

Notre navigateur fait correspondre une url à une page et réciproquement. Or, avec AJAX, tout se passe dans la même page…
Par exemple : notre client visite une page de notre boutique virtuelle, ajoute un article à son caddie, visualise son caddie puis appuie sur le bouton « Précédent » du navigateur pour retourner à la page de la boutique qu’il était en train de visiter. Comment va-t-on gérer ça avec GWT ?
Lire la suite

Télécharger des images depuis et vers une base de données en utilisant JPA

On ne trouve pas beaucoup d’aide en français lorsqu’on veut enregistrer des images en base de données avec Java. Voici donc une petite application qui va lire une collection de fichiers-images pour les stocker dans une base de données.
Lire la suite

GWT 2.5 avec les plugin gwt-maven-plugin 2.5.0 et GXT3

Ça y est, gwt-maven-plugin 2.5.0 est passé en release ! C’est l’occasion de tester GWT 2.5 sur de vraies applications avec la bibliothèque de composant GXT 3. J’utilise déjà cette version avec GWT 2.4 : pas de problème. Et sur leur site, ils annoncent que c’est compatible avec GWT 2.5… eh bien nous allons voir ça !
Lire la suite

Surcharger les méthodes à la volée

Lorsqu’un projet intègre plusieurs librairies Open Source, il est parfois nécessaire de modifier le comportement d’une méthode d’un composant. Afin de ne pas surcharger votre projet avec la création de classes d’extension je vous propose de n’écrire que le morceau de code à modifier, directement au moment où l’on instancie le composant qui nous intéresse. Nous allons surcharger les méthodes à la volée!
Lire la suite