Archive

Articles de Bastien JANSEN

Son site web : http://foobaz.free.fr/blog/

Mieux le connaître


Vous pouvez admirer mon profil LinkedIn pour en savoir un peu plus sur moi...

Plugins annotés et chargés dynamiquement en Java

Attention : cet atricle n’est pas un atricle sur le cyclimse.[?]

Introduction

Je suis un geek. Comme tout bon geek qui se respecte, mes activités extra-professionnelles incluent entre autre des jeux vidéo et de la programmation (tard le soir en buvant un soda quelconque). Alors quand je peux mélanger deux activités favorites entre elles, c’est chouette. Etant fan de Trackmania Nations, il m’arrive de fouiner dans toute source d’information qui s’y rapporte.

C’est ainsi que j’ai appris que le serveur dédié TrackMania peut être contrôlé à distance par des appels XML-RPC. Evidemment, tout ça me donne envie d’ouvrir mon IDE favori pour faire un HelloWorld en Java et voir un peu les possibilités.

Le HelloWorld ayant évolué un peu plus que je ne l’avais initialement prévu, il s’est vu doté d’un système de plugins chargés dynamiquement (parce que j’avais envie d’explorer ce domaine depuis un certain temps déjà).

Assez raconté ma life, je vais maintenant vous faire part de mes réflexions relatives à la mise en place d’un système de plugins sous forme de JARs, pouvant être chargés/déchargés au runtime, et utilisant des annotations personnalisées.

Lire la suite…

Share

Oubliez les redéploiements grâce à JRebel

Introduction

Comme une grande partie des lecteurs de ce blog, vous avez certainement déjà travaillé sur des applications web Java EE de taille variable, sur lesquelles vous avez fait un nombre indécent de redéploiements à chaque fois que vous vouliez valider des modifications fraîchement apportées. Puis vous avez dû découvrir que depuis Java 1.4, la JVM permet de faire du Hotswap en mode debug, c’est-à-dire de remplacer du code à la volée au runtime.
Lire la suite…

Share

Illuminez vos logs dans Eclipse

Introduction

Comme beaucoup de lecteurs de ce blog, j’utilise un IDE au quotidien. Sur mon projet actuel, c’est Eclipse combiné à un serveur Websphere. Pour des raisons pratiques, je fais un tail -f des logs du serveur dans la console d’Eclipse, et qui dit serveur d’applications Java + logs en niveau DEBUG dit énormément d’informations à scanner pour trouver ce qui m’intéresse réellement (quelques Mo de logs par jour !). Lire la suite…

Share

Un peu de LOLcode…

Introduction

Dans cet article, je vous propose quelque chose d’assez différent des sujets abordés habituellement. En lisant du code écrit par d’autres développeurs, je suis resté perplexe sur quelques méthodes. Après les avoir relues quelques fois, la façon d’écrire m’a fait sourire, comme quoi d’un développeur à l’autre les méthodes de réflexion et d’écriture de code varient fortement.

Je vous propose donc quelques extraits de code méritant le détour, ça donne des snippets assez drôles, cherchez l’erreur !
Lire la suite…

Share
Categories: Non classé Tags: , , ,

Blazé du remoting ? Utilisez Spring-flex !

Introduction

Logo Spring

Suite à la mise en place d’un environnement de développement Flex en Open Source, je vous propose aujourd’hui de simplifier l’utilisation de BlazeDS grâce à Spring BlazeDS Integration (Spring-flex).

La description suivante, traduite de l’introduction faite sur le site officiel, résume bien les buts recherchés :

Spring BlazeDS Integration est une réponse à une demande de la communauté qui souhaitait avoir une solution pour construire des RIA propulsées par Spring, utilisant Adobe Flex pour la technologie client. [...] Bien qu’il était possible d’utiliser BlazeDS pour se connecter à des services gérés par Spring, ce n’était pas réalisable de manière “naturelle” pour un développeur Spring, nécessitant d’avoir à maintenir une configuration XML BlazeDS séparée. Spring BlazeDS Integration change tout cela en transformant le MessageBroker de BlazeDS en un objet géré par Spring, ouvrant des perspectives vers une intégration plus complète qui suit le “Spring way”.

Dans cet article, nous allons voir les principes de base de Spring BlazeDS Integration : configuration, exposition des services et consommation par un client Flex. Un projet est réalisé en parallèle pour illustrer la théorie ; les exemples de code suivant en sont tirés. Le code source final est disponible à la fin de cet article. Si vous n’avez pas encore lu le précédent article, je vous invite à le faire car il explique de nombreuses notions qui seront réutilisées ici. Lire la suite…

Share