Cours Netbeans

Cours Création de tags personnalisés sous NetBeans


Télécharger Cours Création de tags personnalisés sous NetBeans

★★★★★★★★★★3.5 étoiles sur 5 basé sur 1 votes.
Votez ce document:

Télécharger aussi :


Cours Création de tags personnalisés sous NetBeans

....

Créer un projet d’application Web sous Netbeans

1) Créez un nouveau projet (menu File>New Project)

2) Sélectionnez la catégorie Web et le type de projet Web Application

3) Choisissez un nom de projet (TPCustomTags par exemple), un répertoire de stockage (Project Location), un serveur d’application (Apache Tomcat), une version de JEE (Java EE 5) et validez la création (bouton Finish).

Un projet d’application web est crée, sa hiérarchie est la suivante. Il contient une seule page index.jsp :

4) lancez l’exécution de ce projet (c'est-à-dire sa compilation et son déploiement dans le serveur Tomcat intégré à Netbeans) simplement en cliquant sur le bouton de la barre d’outil de Netbeans.

Si vous travaillez sur les terminaux SunRay et que vous vous connectez sur les serveurs

imablade pour lancer Netbeans, il faut configurer le serveur Tomcat de Netbeans pour fixer des numéros de ports différents selon les utilisateurs. Donc avant de poursuivre référez vous à l’annexe Configuration de Tomcat/Netbeans pour les serveurs imablade.

Le serveur Tomcat est automatiquement lancé, et une l’application lancée dans votre navigateur.

(Remarque : vous pouvez choisir le navigateur ouvert (Mozilla, IE, …) à l’aide du menu Tools>Options).

Votre navigateur affiche la page index.jsp (qui ne propose pas grand-chose … pour le moment).

Créer un premier tag personnalisé : HelloTag

Vous allez maintenant créer un premier tag personnalisé qui affichera tout simplement le texte Bonjour

Monde Cruel !!! en gras. Tout d’abord il vous faut définir la librairie de tags à laquelle sera associé votre nouveau tag. Pour cela procéder comme suit :

1) Créez un nouveau fichier de type Tag Library Descriptor (TLD). Soit par le menu File>New

File, le bouton New File de la barre d’outils ou un clic droit sur le projet dans le navigateur. Dans la catégorie Web sélectionnez le type de fichier Tag Library Descriptor.

Un assistant (wizard) de création de fichier TLD s’affiche. Renseignez le nom de la bibliothèque de tags (par exemple avec maTagLib) et validez (bouton Finish les autres valeurs proposées par défaut par NetBeans sont suffisantes).

Un fichier maTagLib.tld est créé dans le répertoire Web-INF/tlds de votre application et est ouvert dans l’éditeur.

2) Il vous faut maintenant créer votre gestionnaire de tag (tag handler). Créez un nouveau fichier de type

Tag Handler… (comme précédemment vous passerez par le menu File>New File, le bouton New

File de la barre d’outils ou un clic droit sur le projet dans le navigateur).

L’assistant de création de gestionnaire de tag s’affiche. Dans le premier panneau vous préciserez le nom de votre gestionnaire de tags (par exemple HelloTag) et son package (par exemple mestags).

Passez à l’étape suivante (bouton Next) et renseigner les différents champs pour le descripteur de votre tag personnalisé dans le fichier .tld de votre bibliothèque :

  • Le nom du tag (par exemple hellotag),
  • Le type de corps (body), ici empty,
  • Le fichier TLD, vous sélectionnerez le fichier maTagLib.tld créé précédemment (bouton Browse).

Un package mestags et un fichier HelloTag.java sont crée dans votre projet et un éditeur est ouvert sur le fichier HelloTag.java.



3) Modifiez comme suit le code de la méthode doTag de votre classe HelloTag.java afin que celle-ci écrive Bonjour Monde Cruel !!! sur la sortie de votre page JSP.

Sauvegardez le fichier !

4) Modifiez la page index.jsp. Ajoutez la directive taglib pour déclarer la bibliothèque de tag et l’invocation de votre nouveau tag hellotag.

5) Sauvegardez le fichier index.jsp et relancez votre application (bouton Run de la barre d’outils).

Ajout d’un attribut au tag HelloTag.

Dans ce qui suit vous allez modifier votre gestionnaire de tag de manière à ce que l’utilisateur puisse paramétrer le message afficher à l’aide d’un nom.

1) Modifiez le fichier maTagLib.tld pour rajouter la description d’un attribut pour le tag HelloTag.

Sauvegardez le fichier maTagLib.jsp

2) Modifiez le gestionnaire de Tag (HelloTag.java) pour y ajouter le support de l’attribut name.

Sauvegardez le fichier HelloTag.jsp

3) Modifiez la page index.jsp pour y ajouter un appel à votre tag avec un paramètre.

4) Sauvegardez le fichier index.jsp et relancez l’application (bouton Run de la barre d’outils).

Exercices

Les exercices suivants reprennent les exemples présentés à la fin du cours (voir les transparents en ligne

http://www.inrialpes.fr/helix/people/genoud/ENSJAVA/cours/supportsPDF/JSP_2pp.pdf).

1) Rajoutez à votre bibliothèque de tags un nouveau tag qui admet un corps. Ce tag admet un paramètre (obligatoire) name de type chaîne de caractères. Le résultat produit est l’encadrement du texte situé à l’intérieur du corps du tag par HELLO name et BYE name comme le montre la figure ci-dessous.

2) Après avoir tester votre tag précédent modifiez le, de manière à ce que le texte affiché soit transformé en majuscule.

Indication : on utilisera un objet StringWriter comme paramètre dans le message invoke envoyé au corps du tag pour récupérer la chaîne correspondant au corps, chaîne qui sera ensuite transformée en

majuscules (méthode toUpperCase() de la classe String) avant d’être envoyé sur la sortie de la page Jsp.

3) Ecrire deux tags switchtag et casetag qui lorsqu’ils sont imbriqués reproduisent le fonctionnement d’une instruction switch case des langages de programmation.

Annexe

Configuration de Tomcat/Netbeans pour les serveurs imablade.

Lorsque vous utilisez le serveur Tomcat de Netbeans, celui-ci utilise par défaut les ports 8084 et 8025. Si plusieurs Netbeans tournent sur une même machine (ce qui est le cas lorsque vous travaillez sur les serveurs d’application de l’UFR IMA), il faut attribuer des numéros de port différents pour chacun des serveurs Tomcat. Pour cela procéder comme suit :

1) Sélectionnez l’onglet Services (si il n’est pas présent, vous pouvez l’afficher par le menu

Window>Services).

2) Développez le nœud Servers (en cliquant dessus) et selectionnez le nœud Apache Tomcat.

3) Ouvrez le fenêtre de configuration des propriétés du serveur (clic droit sur le noeud Tomcat et sélection de l’item Properties dans le menu contextuel). Dans celle-ci fixez les numéros de ports (Server Port ET Shutdown Port) en choisissant des numéros qui ne sont pas utilisés.

Au cas où les numéros que vous auriez choisis serait déjà utilisés un message d’erreur est affiché sur la console au lancement de Tomcat.



Par ailleurs, sur les terminaux SunRay il faut configurer le navigateur qui sera ouvert lorsqu’une application Web est lancée. Pour cela sélectionnez le menu Tools>Options et dans la fenêtre de configuration qui apparaît sélectionnez le navigateur Mozilla.

… ….

3 Etape 2 : créer une application Compteur

Réalisez une seconde application semblable à celle du cours dans laquelle on réalisera un compteur non visible, composant de type “écouté”. Pour cela une petite aide vous est donné si vous choisissez “new

JavaBeans Component” au lieu de “new Class”, le code d’une propriété “SampleProperty” est écrit, que vous pouvez modifier.

Une fois la classe définissant les composants “compteur” créée et mise dans la palette, vous connecterez graphiquement un compteur à deux boutons incr et decr et à un afficheur d’entier.

Attention pour connecter un composant invisible à un autre, il faut faire les connections dans le “navigateurinspecteur”, pas dans la fenêtre des composants visibles.

Pour tester l’application, utiliser “Run Project” dans le menu contextuel du projet, après avoir fait le “build”.

Points à constater/comprendre :

— A noter une implantation nouvelle du schéma de conception “Adapteur” dans laquelle la classe de l’adapteur est remplacée par une simple méthode de la classe. Visualisez ainsi les deux méthodes générées pour connecter les boutons au compteur.

Comprendre l’utilisation de l’évènement PropertyChange et l’utilisation qui en est faite pour connecter le compteur à l’afficheur. Si vous ne comprenez pas les options qui vous sont proposées pour le passage de paramètres, choisissez celle qui vous permet de donner vous-même le code.

4 Etape 3

Réalisez le composant Porte de l’application exemple. Pour cela il faut globalement reprendre ce qui a été fait à l’étape 2 mais de remplacer JFrame par JPanel. Ceci vous permettra de créer un composant que vous pourrez placer sur la palette plutôt qu’une application finale. Il faut également trouver une solution pour réaliser les méthodes start et stop.

5 Etape 4

Réalisez l’application de gestion de la salle de spectacle. L’idée est qu’il soit possible d’y intégrer des portes liées entre elles (idem il faudra y remplacer dans Porte, un JFrame par un JPanel. Cela montre une limite de ce système, il faut choisir entre une appli et un composant.

6 A vous de jouer

Faites des liens et testez. Les propriétés liées se retrouvent dans divers environnement ou frameworks d’assemblage par observation, dont Spring (recherche web).

Testez les propriétés contraintes. Testez la sérialisation. Testez les beanDescriptors. Inventez d’autres composants.

Essayer par exemple de réaliser un composant Timer qui emet un évènement toutes les x secondes.

Il pourrait servir dans l’application “salle de concert” pour mémoriser un état des entrées toutes les minutes en vue de connaître la répartition temporelle des arrivées.



299