Comment ça marche ?

XDoclet permet le développement orienté attribut (Attiribute-Oriented Programming) pour java. En d'autres termes, cela signifie que vous allez ajouter plus d'information dans votre code en y ajoutant des meta données (attributs). C'est réalisé avec des balises JavaDoc spécifiques.

Pour rappel, une balise JavaDoc se présente sous la forme :
/**
 * @author C.MUHLENBACH
 **/
Une balise spécifique XDoclet se présente sous la forme :
/**
 * @namespace:tag_name name="value" name2="value2" ...
**/
Chaque balise XDoclet est identifiée par un nom (tag_name) qui appartient à un espace de noms (namespace). Les propriétés sont passées par le format name="value". Il est possible d'associer plusieurs propriétés à un élément en cumulant les couples name="value". Voir des exemples d'espaces de noms existants.

XDoclet va parcourir (effectuer un parsing) des fichiers sources et va générer des fichiers particuliers comme des descripteurs XML et/ou du code source. Ces fichiers sont générés à partir de templates qui utilisent les informations fournies dans le code source et les balises JavaDoc spécifiques.

Actuellement, XDoclet ne peut être utilisé que comme une étape de construction de programme (build process) en utilisant Jakarta Ant .

Bien que XDoclet fut à l'origine conçu comme un outil de création d'EJBs, il a évolué en un moteur de génération de code générique. XDoclet est constitué d'un noyau et de modules toujours plus nombreux. Ces nouveaux modules permettent de générer d'autres fichiers pour différents composants.

XDoclet a été développé avec une collection de modules pour la génération de différents types de fichiers. Les utilisateurs et autres développeurs peuvent écrire leurs propres modules (ou en modifier d'existants) s'ils veulent étendre les fonctionnalités d'XDoclet.

Récapitulatif des étapes pour la génération de code avec XDoclet :

  1. Créer son propre template de déploiement .xdt (facultatif)
    Habituellement on utilise les modules déjà développés pour XDoclet (qui sont très puissants) plutôt que de développer ses propres modules (à moins que les fonctionnalités désirées ne soient pas déjà implémentées).
  2. Commenter son code avec les balises Javadoc spécifiques XDoclet.
  3. Créer un fichier de déploiement build.xml pour Ant intégrant des demandes de génération de code XDoclet.
  4. Lancer Ant sur le fichier build.xml => les fichiers désirés sont générés.

Suite