System.exit et test unitaire

Comme beaucoup de « bons » programmeurs, vous prenez soins d’écrire des tests unitaires pour vos applications. vous vous assurez qu’elle a toujours le comportement attendu. Et puis un jour, c’est le drame, il faut tester

Si le fichier de configuration est incorrect, l’application retourne -1, si une erreur inconnue se produit, elle retourne -2 et si tout se passe bien, elle retourne 0.

Mais comment faire? En effet, si on laisse ceci se produire, le test s’arrête, l’intégrateur maven ne comprend plus rien et des pandas sont morts.
Lire la suite

Supplique aux enseignants

Chers enseignants,

j’ai le plus grand respect pour votre travail de recherche et votre dévouement à l’enseignement de vos connaissances. Vous faites un travail important, et bien souvent très mal payé. C’est avec tout ce respect et la gratitude pour l’enseignement dont j’ai bénéficié que je vous demande, aujourd’hui, de bien vouloir lire ce message qui vous est destiné et de le prendre avec toute la considération due lors de votre enseignement du langage Java.

Lire la suite

ThreadLocal, partie 1, principes du stockage magique

Dans l’API java, on trouve une classe au comportement tout a fait particulier, ThreadLocal. Son principe: stocker des données dans le Thread courant afin de les récupérer plus tard, dans une autre méthode par exemple, sans avoir à les passer en argument à toute la chaine d’appel. Cette classe peut vous être d’un grand secours, mais elle doit être utilisée judicieusement et surtout en extrêmement précautionneusement!
Lire la suite

Obtenir l’ip de la machine

Question simple et pourtant vaste que voilà. Comment obtenir le nom et l’adresse ip de la machine sur laquelle tourne votre application java? Sous son aspect simple dans l’énoncé se cachent en fait une multitude de possibilités. Comment définissez vous « l’adresse ip » de la machine? Une IPv4 ou une IPv6? Une ip locale ou une ip telle que vue par vos clients?

Lire la suite

Améliorer le rendu de JavaHelp

Si, comme moi, vous avez déjà du réaliser des fichiers d’aide, vous êtes surement tombé sur la spécification JavaHelp (version 1.0 et version 2.0). Vous avez probablement immédiatement apprécié son intégration à Swing, son support pour l’internationalisation, l’indexation, la possibilité de réaliser vos fichiers d’aide en pur HTML, de pouvoir fusionner des fichiers d’aide au vol et la possibilité de mise à jour par réseau de ces fichiers.

Et puis, après quelques essais, vous avez déchanté. Vous avez vu à quoi ressemblait un ficher HTML affiché avec JavaHelp et vous avez vraiment hésité avant d’intégrer cette technologie dans votre application. Parce que, il faut vraiment l’admettre, malgré toutes ses promesses, JavaHelp a visuellement l’air coincé dans les années 1990!
Lire la suite