Les nouveautés de JBuilderX Enterprise

request

Cet article passe en revue l'ensemble des nouveautés de JBuilderX, l'ensemble sera accompagné de nombreuses captures d'écran. ♪

- Titre : Les nouveautés de JBuilderX Enterprise

- Auteur : request

- Parution : 18 janvier 2004

- Mise à jour : 4 janvier 2013

- Public visé :

- Licence : Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright ® 2013 Request. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- I. Introduction

- I-A. Remerciements

- I-B. Introduction

- I-C. Des attentes non comblées ?

- I-D. Avertissement

- II. L'IDE

- II-A. Personnalisation

- II-B. Configuration du bureau

- II-C. Les Todos

- II-D. Les bookmarks

- II-E. File Browser

- II-F. La vue structure

- II-G. Correction des JavaDoc

- II-H. La page d'édition

- II-I. Les options

- II-J. Le débogueur

- II-K. La gestion des versions

- II-L. Recherche les références locales

- II-M. Gestionnaire de sources

- II-N. Compilation en arrière-plan

- III. L'éditeur de code

- III-A. Les inner classes

- III-B. La surcharge de classe

- III-C. Les propriétés

- III-D. Constructeurs

- III-E. Les méthodes

- III-F. La JavaDoc

- III-G. Les propriétés (bis)

- III-H. La recherche de membres

- III-I. Marquage de portée

- III-J. Masquage de code

- III-K. Code mort et héritage

- III-L. Refactoring

- IV. Mobilité

- IV-A. I-mode

- IV-B. Designer J2ME

- V. Web

- V-A. Importer un projet web existant

- V-B. Struts

- V-C. Aide à la saisie

- V-C-1. Le HTML

- V-C-2. Les taglib HTML

- V-C-3. Le XML

- V-C-4. L'encodage

- VI. Les serveurs J2EE

- VI-A. JBoss

- VI-A-1. Configuration du serveur

- VI-A-2. Configuration du projet

- VI-A-3. Designer

- VI-A-4. Déploiement

- VI-A-5. Pilotage par JBuilder

- VII. Les WebServices

- VII-A. Le designer des WebServices

- VII-B. Le designer des flux Axis

- VII-C. Le designer des flux WebLogic

- VIII. Conclusion

I - Introduction

I-A - Remerciements

Je tenais à remercier chaleureusement Alacazam pour sa relecture orthographique active.
Merci également à l'équipe Java pour leurs conseils.

I-B - Introduction

Dans l'introduction de l'article sur les nouveautés de JBuilder 9, je m'intriguais déjà de la richesse des ajouts fonctionnels sur chaque version de JBuilder. Cette version n'échappe pas à la règle, je dirais même que Borland a largement accéléré ses développements sur ce produit. À tel point que j'ai mis beaucoup de temps avant de pouvoir vous présenter cet article.
Son découpage en plusieurs pages est devenu obligatoire!

On peut se demander ce qui pousse Borland à augmenter les nouveautés et la fréquence de sortie de son produit (mon article sur JBuilder 9 date seulement de 6 mois). La réponse vient certainement de la concurrence. IBM a réussi un grand coup de maître avec Eclipse, un produit bien conçu, gratuit et un très bon marketing. D'après une étude indépendante JBuilder domine encore le marché des IDE avec 37 % des interviewés l'utilisant suivi de peu par Eclipse avec 35 %. Bien que ces deux IDE n'aient pas la même cible, de plus en plus de développeurs utilisent Eclipse en remplacement de WSAD, JDeveloper ou JBuilder pour les développements J2EE (grâce à des projets open source comme ANT, Maven ou XDoclet).

Afin de concurrencer cet IDE gratuit, il ne reste plus à Borland qu'à innover et à proposer mieux. Donc finalement c'est certainement à cette concurrence que nous devons toutes ces nouveautés.
Pour cette nouvelle version, voici les grandes nouveautés proposées pour y arriver :

- la version personnelle est maintenant gratuite sans aucune restriction, y compris pour les développements commerciaux ;

- JBuilderX est maintenant livré avec une multitude d'OpenTools ;

- un designer Struts pour faciliter l'écriture des applications Web ;

- un designer pour l'élaboration des WebServices ;

- de nombreuses améliorations de l'IDE ;

- le support de JBoss comme serveur J2EE en plus des huit autres déjà disponibles ;

- les kits de développement i-mode, J2ME, Palm, Nokia, Simemens, Sprint,Sony, Zentek avec designer graphique et émulateurs ;

- l'outil de reporting Crystal Report ;

- d'autres nouveautés que nous allons découvrir ensemble…

I-C - Des attentes non comblées ?

J'attendais dans cette version une merveilleuse intégration avec Together, et bien évidemment pour le même prix. Mon attente venait des produits C#Builder et Delphi 8 qui bénéficient tous les deux d'une intégration complète de la vue UML du diagramme de classe. Cette intégration permet en restant dans le même produit d'avoir un outil bidirectionnel de manipulation de classes. Le référentiel étant le code source lui-même.
À l'heure où j'écris cet article, rien de tel pour JBuilder, sauf un produit séparé (le même que pour Eclipse). Pourtant c'est l'intégration avec Java qui aurait dû être la plus facile. Il semblerait que se soit une intégration encore plus ambitieuse qui soit en cours, une fusion des moteurs des deux produits serait en développement (ce qui permettrait d'avoir une empreinte mémoire quasi nulle pour JBuilder).
Je n'ai pas eu l'occasion de tester la version de Together Studio Java, mais je doute que ce projet soit déjà terminé. Donc à suivre…
[Modification du 26/02/2004]J'ai eu l'occasion de voir cette intégration, elle est complète: (Les huit diagrammes UML, les audits, les metrics, docs, patterns…). Together est complètement fondu à JBuilder, il partage le même moteur d'analyse que JBuilder: Primetime. Cette version est uniquement disponible avec JBuilder Studio. Le produit semble excellent, le meilleur de JBuilder avec le meilleur de Together. [/Modification]

L'autre attente concernait le designer Web, je pensais avoir enfin un IDE qui fusionne le développement et le design Web avec l'interaction que l'on attend entre les deux. C'est déjà le cas des outils .NET avec les WebForms de Microsoft.
Il faut dire qu'il n'y avait toujours aucune norme sur ce sujet dans le monde Java. Seul Struts avait su s'imposer, mais il n'apporte aucune vision composants.
La riposte aux WebForms arrive enfin avec SUN et les JSF (Java Server Faces). La norme vient juste de sortir, elle semble enfin séduisante. SUN a déjà présenté son outil de développement (nom de code Rave), qui possède presque les mêmes fonctionnalités que Visual Studio .NET ou C#Builder pour les interfaces Web. Le produit est annoncé en milieu d'année 2004. Une telle intégration n'existe pas dans cette version de JBuilder, espérons que Borland y travaille très fort.
Un add-on pour cette version sera peut être proposé comme les WebServices avec la version 7.

I-D - Avertissement

Cet article concerne, comme le titre l'indique, uniquement les nouveautés de JBuilderX Enterprise. Il ne traite donc pas des différences entre les quatre versions :

- Fondation ;

- Développeur ;

- Entreprise ;

- WebLogic Edition.

Vous pouvez trouver une matrice de fonctionnalités des différentes versions sur le site de Borland.

Il n'est pas non plus une comparaison avec d'autres IDE Java, il ne parle pas des fonctionnalités déjà existantes dans les versions précédentes. Pour en connaître plus sur les nouveautés de JBuilder 9, vous pouvez vous référer à mon précédent article.

Toutes les captures d'écran sont faites à partir de la version US, dans la version française, tous les écrans sont traduits.

La description des nouveautés n'est pas exhaustive, elle est également limitée à mes connaissances du produit et des technologies traitées. C'est la première fois que Borland ne communique pas sur l'ensemble des nouveautés de son produit, donc il a fallu aller un peu à la pêche dans le logiciel.

II - L'IDE

Nous allons commencer par les nouveautés de l'IDE:

II-A - Personnalisation

Au fil des versions, les wizards, menus et options se sont accumulés, une nouvelle fonctionnalité permet maintenant de personnaliser les technologies utilisées pour le projet. Cette action permet d'enlever tous les menus, options… des technologies suivantes :

Dans les propriétés avancées, nous pouvons définir des profils de configuration pour chaque type de projet. Ici deux profils, un pour les projets Web, l'autre pour les projets EJB.

II-B - Configuration du bureau

JBuilderX permet maintenant de configurer tous les panneaux du bureau. Chaque panneau peut être icônifié, développé ou ancré. Les panneaux peuvent également être organisés sur tous les points cardinaux ou au centre. Plusieurs panneaux peuvent cohabiter au même endroit, soit sous forme d'onglet soit les uns en dessous des autres.

Dans cette première capture, il y a l'organisation traditionnelle du bureau, la flèche |<- permet d'icônifier le panneau, la croix X permet de le fermer, le menu View permet de les réafficher.
Ici le File Browser et Project sont au même endroit, un onglet permet de passer de l'un à l'autre. La vue structure est elle aussi à gauche, en dessous des deux autres.

Dans ce second exemple, le File Browser et la vue project sont icônifiés, en cliquant sur l'icône, le panneau s'affiche jusqu'à la sélection d'un de ces éléments (ici l'activation d'une jsp), le panneau se masque automatiquement. Ce mécanisme est particulièrement intéressant pour la vue Projet.

L'ensemble peut être sauvegardé et rappelé par une icône, un raccourci clavier…

II-C - Les Todos

Un nouveau panneau Todo permet enfin d'avoir un récapitulatif des todo de l'ensemble des classes du projet.
Chaque todo doit être signalé par un tag de ce type :

/** @todo commentaire */

II-D - Les bookmarks

Les bookmarks s'organisent, un écran récapitulatif permet de lister tous les bookmarks posés dans les sources :

II-E - File Browser

Borland cède finalement à l'intégration d'un explorateur de fichier dans son IDE. Cet explorateur vient compléter le panneau projet. Ce dernier-né permet d'organiser les répertoires et les fichiers. Le drag & drop est autorisé, il permet d'ajouter, y compris récursivement des fichiers ou répertoires dans le projet courant. Le projet courant et les favoris s'affichent également dans ce nouveau panneau.

II-F - La vue structure

La vue structure possède maintenant un ensemble d'icônes pour :

- réduire l'affichage par visibilité ;

- grouper par visibilité ;

- grouper par type (Classes / Méthodes / Propriétés) ;

- trier par ordre alphabétique ;

- grouper les propriétés (je n'ai pas compris ce que cela faisait) ;

- mettre à plat les « inner classe » ou les rendre hiérarchiques ;

- affichage des types ;

- groupement par héritage.

Ces options sont également réglables via cette boite de dialogue :

II-G - Correction des JavaDoc

Une nouvelle option permet de corriger les conflits sur la javadoc. Un clic droit dans la vue structure permet de régler le problème, soit en ajoutant les tags manquants, soit en supprimant les tags inutiles.

II-H - La page d'édition

Nous avons la possibilité de scinder en deux la fenêtre de code. Deux petites flèches font leur apparition, elles permettent de passer à la méthode précédente ou suivante.

La petite icône en bas à droite (information) permet de se situer dans le code. Une barre bleue affiche dans quelle classe, sous classe, méthode… nous nous trouvons. Cette option semble particulièrement utile dans le cas de gros fichiers.

Dans cet exemple, je suis dans le bloc try de la méthode create de la classe PersonneFacadeBean. Ces éléments se situent à la ligne 67, 66 et 14 du fichier.

Une autre possibilité consiste à prendre un onglet de l'éditeur de code et de le déplacer dans JBuilder ou à l'extérieur, dans ce cas c'est une nouvelle fenêtre autonome qui sera créée.

Une nouvelle option permet maintenant d'avoir les onglets sur une seule ligne avec des flèches de navigation ou le mode traditionnel avec les onglets qui s'affichent sur plusieurs lignes. Les nostalgiques de Delphi apprécieront.

Un double clic sur l'onglet du fichier libère le bureau de tous les panneaux pour avoir le maximum de place, un nouveau double clic restaure le bureau (l'équivalent à ctrl+alt+z).

Un clic droit sur l'onglet permet d'accéder à une nouvelle option pour mettre en évidence le fichier courant dans la vue projet. Les répertoires sont automatiquement ouverts si nécessaire.

II-I - Les options

L'ensemble des options est maintenant accessible via une arborescence (il faut dire que leur nombre a encore beaucoup augmenté…), cela rend moins accessibles les options, mais libère les menus.

II-J - Le débogueur

Là aussi les nouveautés sont nombreuses, voici celle qui m'a semblé la plus intéressante : la consultation des gros tableaux était fastidieuse, on peut maintenant définir un mode par page en précisant le nombre d'éléments à afficher, des flèches permettent d'accéder à la page d'avant et d'après.

II-K - La gestion des versions

Voici une modification qui semble anodine, mais qui en est loin. JBuilder permet de mettre maintenant un marqueur de version sur l'ensemble du projet. Ce marqueur permet de revenir sur l'état du projet lors du marquage. L'ensemble des fichiers est mis à jour. Cette gestion fonctionne également après la fermeture de JBuilder. Cette gestion est plus pratique que le ctrl+z qui ne s'occupe que du fichier courant.

II-L - Recherche les références locales

Cette fonctionnalité, comme les recherches de référence, recherche où le symbole est utilisé, affecté, mais uniquement dans la classe courante. Le résultat s'affiche dans la vue message.

II-M - Gestionnaire de sources

Les opérations de fusion peuvent maintenant se faire directement dans JBuilder, sans passer par des outils extérieurs. Dans ce nouvel écran, les deux fichiers sont affichés à gauche et à droite, le résultat de la fusion s'affiche en bas. Deux petites flèches permettent de passer au conflit suivant.

II-N - Compilation en arrière-plan

Une nouvelle option permet d'activer la compilation en arrière-plan.

Cette option est également disponible lors d'une compilation traditionnelle, dans ce cas un bouton permet de la continuer tout en ayant la possibilité de continuer à travailler dans JBuilder.
Les erreurs s'affichent progressivement dans la barre de messages.

III - L'éditeur de code

Quelques nouveautés sur le menu contextuel de l'éditeur. L'ensemble de ces nouveautés sont des Wizards permettant de rendre un peu plus faciles certaines opérations.

III-A - Les inner classes

Voici le résultat après la génération :

package com.dvp.test.jbuilderx;

public class TestEditeur {

public static void main(String[] args) {
System.out.println("Hello world");
}

/**
* @author Request
* @version 1.0
*/
private class TestInner {
TestInner() {
}
}
}

III-B - La surcharge de classe

Voici le résultat après la génération :

package com.dvp.test.jbuilderx;

import java.util.AbstractList;

public class TestEditeur extends AbstractList {

public static void main(String[] args) {
System.out.println("Hello world");
}

/**
* Returns the element at the specified position in this list.
*
* @param index index of element to return.
* @return the element at the specified position in this list.
* @todo Implement this java.util.List method
*/
public Object get(int index) {
return "";
}

/**
* Returns the number of elements in this list.
*
* @return the number of elements in this list.
* @todo Implement this java.util.List method
*/
public int size() {
return 0;
}
}

III-C - Les propriétés

Voici le résultat après la génération :

package com.dvp.test.jbuilderx;

public class TestEditeur {
private String[] noms = {"toto", "titi"};

public void setNoms(String[] noms) {
this.noms = noms;
}

public String[] getNoms() {
return noms;
}

public static void main(String[] args) {
System.out.println("Hello world");
}
}

III-D - Constructeurs

Voici le résultat après la génération :

package com.dvp.test.jbuilderx;

public class TestEditeur {
/**
* TestEditeur
*
* @param val1 String
* @param val2 String
*/
public TestEditeur(String val1, String val2) {
}

public static void main(String[] args) {
System.out.println("Hello world");
}
}

III-E - Les méthodes

Voici le résultat après la génération :

package com.dvp.test.jbuilderx;

public class TestEditeur {
/**
* addition
*
* @param val1 double
* @param val2 double
* @return double
*/
public double addition(double val1, double val2) {
return 0.0;
}

public static void main(String[] args) {
System.out.println("Hello world");
}
}

III-F - La JavaDoc

Voici le résultat après la génération :

package com.dvp.test.jbuilderx;

public class TestEditeur {

/**
* Méthode de départ de l'application
*
* @param args Les paramètres de la ligne de commande
*/
public static void main(String[] args) {
System.out.println("Hello world");
}
}

III-G - Les propriétés (bis)

Cette dernière option permet d'avoir le récapitulatif des propriétés. Cet écran permet de publier les méthodes get/set et de changer le nom/type de la propriété en une seule fois.

III-H - La recherche de membres

Une nouvelle fonctionnalité de recherche de membres est accessible via le menu ou le raccourci (ctrl+shit+G). Cette fonctionnalité permet, quand on est sur une classe java, de se positionner facilement sur un attribut ou une méthode. La saisie de quelques lettres permet de réduire la liste affichée, l'appui sur la touche « Entrée » permet de se positionner.

III-I - Marquage de portée

Un nouvel élément graphique s'affiche maintenant à gauche du code pour indiquer la portée du bloc courant.

III-J - Masquage de code

Borland a suivi la mode des éditeurs en ajoutant une flèche de masquage de code. Cette fonctionnalité est intéressante pour masquer la méthode init swing ou d'autres méthodes qui nuisent à la lisibilité du code.

III-K - Code mort et héritage

Une autre nouveauté qui se révèle fort pratique est l'utilisation du code couleur gris pour les propriétés ou variables non utilisées et l'italique pour les méthodes surchargées.

III-L - Refactoring

Quatre nouvelles fonctionnalités de refactoring font leur apparition :

- Extract interface : ouvre une boite de dialogue en proposant de créer une interface avec la liste des méthodes disponibles ;

- Superclass : crée un ancêtre à la classe courante ;

- Pull Up : déplace une méthode dans une des classes filles ;

- Push Down : déplace une méthode dans la classe ancêtre.

L'ensemble des commandes de refactoring est maintenant accessible par un clic droit sur l'un de ces éléments dans la vue structure.

IV - Mobilité

L'offre Mobile de JBuilder s'est considérablement étoffée voici les derniers supports :

- J2ME 2.0 & 1.0 ;

- Palm ;

- Dojo 1.5 & 3.0 (i-mode) ;

- Nokia Developer's Suite for Java 2 Platform, Micro Edition (J2ME) ;

- Siemens Mobility Toolkit (SMTK) ;

- Sprint PCS Wireless Toolkit for the Java Platform ;

- Sony Ericsson ;

- Zentek Developer's Network (ZDN) ;

Je n'ai pas pu tester ici l'ensemble des nouvelles fonctionnalités tellement ce sujet est vaste. Borland a en tout cas dépensé beaucoup d'énergie sur le sujet !

IV-A - I-mode

L'i-mode, lui aussi a eu droit à un designer graphique, on peut constater sur cette capture la taille (16Ko) de cette application.

Voici le résultat : on saisit un code boursier, et l'application se connecte sur le site de Yahoo pour trouver le cours.

Voici le résultat du designer :

private void jbInit() throws Exception {
stockTicker = new Ticker();
add = new Button();
remove = new Button();
option = new Button();
this.setTitle("Stock Tracker");
this.setSoftKeyListener(new com.nttdocomo.ui.SoftKeyListener() {
public void softKeyPressed(int int1) {
this_softKeyPressed(int1);
}
public void softKeyReleased(int int1) {
}
});
this.setComponentListener(new com.nttdocomo.ui.ComponentListener() {
public void componentAction(Component component, int int1, int int2) {
this_componentAction(component, int1, int2);
}
});
add.setLabel("Add");
add.setSize(55, 16);
remove.setLabel("Remove");
remove.setSize(55, 16);
option.setLabel("Option");
option.setSize(120, 16);
this.add(stockTicker);
this.add(add);
this.add(remove);
this.add(option);
}

Une démonstration plus visuelle avec les API 2D.

IV-B - Designer J2ME

Je suis tombé sur ce designer par hasard dans la documentation, il retrace tous les enchaînements des écrans dans l'application. Des options contextuelles sont accessibles sur chaque élément. N'ayant pas de compétences sur J2ME, je n'ai pas pu creuser le sujet.

V - Web

Le web évolue avec le support des normes JSP 1.2 et Servlet 2.3. La conception web voit surtout arriver un designer pour Struts et des aides à la saisie xml et html.

V-A - Importer un projet web existant

Une nouveauté fort pratique : création d'une application web à partir d'un war existant, JBuilder reconstruit alors l'arborescence et le paramétrage du web.xml.

Voici le résultat, sur cette capture, nous pouvons voir le fichier de configuration web.xml repris dans son intégralité. L'ensemble des ressources (images, css, txt…) et les jsp ont également été récupérées.

V-B - Struts

Avec le support de Struts 1.1, on peut maintenant activer « Tiles » & « Validation ». N'utilisant pas ce framework, je n'ai pu que survoler cette partie.

La grande nouveauté de struts est le designer visuel « 2 way » qui permet de gérer le fichier struts-config.xml.
Ici le designer des actions :

le designer des « forms » ;

lle designer des « tiles ».

V-C - Aide à la saisie

Cette nouveauté est certainement ma préférée, c'est un gain de temps et un pense-bête très pratique. Cette aide la saisie s'applique au HTML, mais aussi au XML.

V-C-1 - Le HTML

Dans le HTML, l'utilisation du ctrl + espace affiche une boite de dialogue proposant tous les éléments ou attributs accessibles contextuellement. Le petit bonus : un commentaire s'affiche en face de chaque élément pour le décrire. Cette fonctionnalité était courante dans les outils de design web, c'est très pratique de la retrouver dans un IDE.

Les types énumérés s'affichent automatiquement lors de la saisie.

Le code Java lui aussi propose la même fonctionnalité, comme dans les versions précédentes.

V-C-2 - Les taglib HTML

Dès qu'une page web possède une bibliothèque de tag, celle-ci sert automatiquement de référentiel pour l'aide à la saisie. Si les commentaires du fichier tld ont été positionnés, alors il s'affiche également.
Si des attributs sont marqués obligatoires, alors ces attributs sont ajoutés automatiquement au fur et à mesure de la saisie.
Ici un exemple avec la jstl.

V-C-3 - Le XML

Le XML aussi bénéficie de cette nouveauté, dès qu'une dtd est spécifiée, l'aide à la saisie peut être activée.

Même chose pour les fichiers xml avec une xml schéma.

V-C-4 - L'encodage

Dès la saisie d'une « & », l'aide à la saisie propose des caractères d'encodage.

VI - Les serveurs J2EE

L'offre J2EE suportée par JBuilder s'est étendue, le plugin JBoss est maintenant développé et fourni par Borland en standard, voici maintenant la liste des serveurs J2EE exploitables dans JBuilder :

Serveur

Version

Commentaire

Borland Enterprise Server

5.x

Développé par Borland

Générique J2EE

n/a

Développé par Borland

iPlanet Application Server

6.x

Développé par Borland

JBoss

3.x

Développé par Borland

JonAs

3.x

Développé par ObjectWeb (JonAs), disponible sur leur site (voir la remarque plus bas)

Oracle Application Server

?

Développé par Oralce, fourni sur le CD des add-on

Sybase Application Server

?

Développé par Sybase, fourni sur le CD des add-on

WebLogic Application Server

6.x

Développé par Borland, commercialisé également par BEA

WebLogic Application Server

7.x

Développé par Borland, commercialisé également par BEA

WebLogic Platform Server

8.x

Développé par Borland, commercialisé également par BEA

WebSphere Application Server

5.x

Développé par Borland

WebSphere Application Server Advanced

4.x

Développé par Borland

WebSphere Application Server Single

4.x

Développé par Borland

[Modification du 26/02/2004] Contrairement à ce que j'avais pu dire, la version de WebLogic a été développée par les équipes de Borland uniquement. (Merci à Hérvé pour l'information). Le plugin JonAs (Kelly 1.1, initialement conçue pour JBuilder 7) ne fonctionne plus avec JBuilderX, j'espère qu'une nouvelle version comblera cette lacune. [/Modification]

VI-A - JBoss

Il y avait bien un plugin JBoss pour JBuilder, mais pas à la hauteur du nombre d'utilisateurs de ce serveur, c'est certainement pour cela que Borland a maintenant développé lui-même cette extension.

VI-A-1 - Configuration du serveur

Voici comment configurer JBuilder pour fonctionner avec JBoss, il suffit juste de donner le répertoire, le reste est configuré par défaut. On peut préciser quel type de configuration JBoss utiliser (all, default, minimal…).

VI-A-2 - Configuration du projet

Au niveau projet, on peut préciser les archives à déployer, les ports Tomcat…

VI-A-3 - Designer

Le designer EJB pour JBoss est le même que pour les autres serveurs. Trois possibilités sont offertes : l'utilisation du designer graphique, l'utilisation de l'arborescence graphique ou directement les fichiers Java et les descripteurs XML. L'ensemble se synchronise par rapport aux sources et aux descripteurs.
La vue base de données permet de simplifier la création des entités.

VI-A-4 - Déploiement

On peut déployer, redéployer, annuler un déploiement et lister les éléments déployés. Les déploiements peuvent se faire à chaud si le serveur est démarré.

VI-A-5 - Pilotage par JBuilder

JBuilder sait piloter le démarrage de JBoss comme un simple programme Java. Inutile donc de quitter JBuilder pour lancer JBoss, il est lancé dans JBuilder, les traces sont directement accessibles dans la vue message. Il est donc également possible de déboguer le processus serveur ainsi que d'utiliser OptimzeIt.

VII - Les WebServices

La programmation des WebServices avec JBuilder se fait depuis la version 7. Dans cette nouvelle version, un designer graphique two-way fait son apparition. Le toolkit de WebLogic fait son apparition à côté de celui du groupe Apache : Axis.
Ce sujet est également très vaste, la documentation PDF en français fait 250 pages.
Le choix entre les deux boites à outils se fait de la façon suivante :

Serveur

Boite à outils

Borland Enterprise Server 5.2.1

Axis

Tomcat

Axis

WebLogic Application Server 7.0 SP4 et 8.1 SP1

Axis

WebLogic Application Server 7.0 SP4 et 8.1 SP1

WebLogic WebServices

WebSphere Application Server 4.0.6 et 5.0.2

Axis

VII-A - Le designer des WebServices

Un designer fait son apparition, il permet de façon visuelle d'ajouter ou d'importer des services Web. Un « drag&drop » d'une classe ou d'un EJB est suffisant pour l'ajouter sur le designer.

Sur cette capture, nous voyons une classe Java et un EJB Session publiés comme service Web, nous voyons également une importation d'un service via son wsdl. Le simple fait d'avoir posé un service sur le designer génère automatiquement les fichiers wdsl, les fichiers Axis… Les services sont déjà prêts à l'emploi avec un simple « run ». La vue structure ou le designer permettent de régler les différents paramètres. L'ensemble pouvant également se faire dans les fichiers de descripteur.

VII-B - Le designer des flux Axis

Le Concepteur de flux Axis fournit une surface de conception visuelle qui permet de construire des flux de message, des gestionnaires et de configurer l'affectation de type, etc. Ces flux peuvent être des flux de service individuels ou des flux globaux pour l'ensemble des services du projet. Le Concepteur de flux Axis vous permet de rapidement visualiser, ajouter, modifier et supprimer des gestionnaires, des chaînes, des flux et des informations sur l'affectation de type.
Le Concepteur de flux Axis comprend des concepteurs de flux individuels pour différents composants, tels qu'une chaîne, un service, un flux de demande, etc. Le cas échéant, ils prennent en charge la fonction glisser-déplacer afin de permettre la réutilisation dans les composants enfants des composants globalement définis. Par exemple, un gestionnaire global peut être référencé à l'intérieur d'un service par une simple opération glisser-déplacer. Outre élaborer le flux de service, le concepteur de flux vous permet de configurer chaque élément de service. Vous pouvez utiliser les inspecteurs, en cliquant sur un composant de la surface de conception du concepteur de flux, ou l'interface basée sur les fiches, en choisissant l'onglet Général.

VII-C - Le designer des flux WebLogic

Le Concepteur de Flux WebLogic représente visuellement le flux de messages du service Web et fournit une interface conviviale pour visualiser et éditer le fichier de déploiement web-services.xml. Par exemple, vous pouvez ajouter des chaînes de gestionnaires, de fiabilité et de sécurité.

VIII - Conclusion

L'évolution du monde Java s'est accélérée, JBuilder est le reflet de ces évolutions. Je ne pensais pas que l'écriture de cet article allait me prendre autant de temps. En le rédigeant, je me suis très vite rendu compte que les connaissances nécessaires sont de plus en plus importantes et la nécessité d'un tel IDE pour Java devenue indispensable.
J'espère que le temps passé à la rédaction de cet article en fera gagner à d'autres.