Add-In SQL*Developer / *+ Track 2 */

Dans ce second track consacré au développement d’une Add-In pour JDeveloper, nous allons continuer l’exploration des exemples fournis dans Jdeveloper Extension SDK et développer une Add-In qui ajoute un site au menu « Help | Check for Updates… ». Dans ce cadre, nous allons nous inspirer de l’exemple « UpdateCenter » pour créer une Add-In qui ajoute notre propre site de mise à jour.

Avant d’aller plus loin, reportez-vous au track précédent intitulé « Add-In SQL*Developer /*+ Track 1 */ » qui décrit plus en détail comment développer une Add-In. Pour effectuer ces opérations, nous allons faire ce qui suit :

  • Créer un projet
  • Ajouter un fichier extension.xml
  • Créer un profil de déploiement pour le projet
  • Créer un fichier center.xml et le mettre sur le web
  • Packager l’addin01 et la publier sur un site web
  • Déployer l’Add-In dans SQL Developer
  • Tester l’Add-In

Créer un projet
Sélectionner l’application « addins-application » créée dans le précédent Track et sélectionner le menu « File | New… » puis « General | Projects ». Donnez lui le nom de « addin02 ».

Ajouter un fichier extension.xml
Sélectionner le projet « addin02 » et sélectionner le menu « File | New… » puis « General | XML | XML Document ». Appelez-le extension.xml et positionnez-le dans le répertoire src/META-INF. Le répertoire n’existe pas, créez-le.

Le fichier extension.xml est disponible ici. Il comprend les informations suivantes :

  • Le paramètre « id » de la balise « extension » contient une clé qui est le nom du fichier .jar de l’extension. La valeur saisie est arkzoyd.sqldeveloper.addins.addin02
  • Le nom est le propriétaire de l’add-in sont « Update Center – ArKZoYd » et « ArKZoYd ».
  • La balise dependencies inclus les différents imports pour l’Add-In.
  • La balise feature-hook contient la description de l’Add-In.
  • Le paramètre id de balise update-center contient un identifiant unique qui permet de conserver le lien à l’Add-In, même si elle change ultérieurement
  • La balise update-center contient le nom et l’URL du site d’Update

Créer un profil de déploiement pour le projet
Sélectionner le projet « Addin02 » et sélectionner le menu « File | New… » puis « General | Déploiment Profiles | JAR File ». L’appeler addin02.
Sélectionner le fichier addin02.deploy et avec le menu contextuel (bouton droit de la souris), sélectionner « Properties… ». Comme nom de JAR, donner : « %SQLDEV_HOME%sqldeveloperextensionsarkzoyd.sqldeveloper.addins.addin02.jar » (arkzoyd.sqldeveloper.addins.addin02 doit correspondre au paramètre id de la balise extension du fichier extension.xml).

Créer un fichier center.xml et le mettre sur le web
Le fichier contient par exemple d’Add-In du track précédent. Il est téléchargeable à l’URL que vous avez précisé dans le fichier extension.xml : ici

Packager l’addin01 et la publier sur un site web
Prendre le fichier jar du track précédent et mettez-le dans un fichier .zip avec les répertoires d’installation de l’add-in dans SQL*Developer (en l’occurence, le répertoire sqldeveloper/extensions)
Publié le .zip ainsi créé à l’URL référencée dans le fichier center.xml créé précédemment
Remarque:
ça ne marche pas sur GooglePages.com à cause d’une redirection… alors, je l’ai mis sur free.fr

Déployer l’Addin dans SQL*Developer
Sélectionner le profile addin02.deploy et avec le menu contextuel, sélectionner « Deploy to JAR File ». Le fichier .jar est installé dans le répertoire d’extension de SQL*Developer. Lorsque vous redémarer SQL*Developer l’Add-In sera présente.

Tester l’Add-in
Lancer SQL*Developer et sélectionner le menu « Help | Check for Updates… ». Si l’assistant affiche une page de bienvenue, cliquer sur « Suivant> ». Le Centre d’update installé dans SQL*Developer à l’étape précédente est disponible et l’add-in qu’il contient également…


Après avoir redémarré SQL*Developer, l’Add-in précédente est accessible comme vous le voyez ci-dessous :

Bientôt un prochain track sur ce même thème…

-GarK!

Le projet complet est disponible ici.
Le fichier .jar de l’Addin est disponible ici.
Le fichier center.xml est disponible ici.