Expert Servlet

Fonctionnalité de JBuilder Professionnel et Entreprise.

Pour ouvrir l'expert Servlet, choisissez Fichier|Nouveau, sélectionnez l'onglet Web de la galerie d'objets, puis double-cliquez sur l'icône Servlet.

Dans JBuilder Professionnel et JBuilder Entreprise, vous pouvez utiliser l'expert servlet pour créer un fichier Java étendant javax.servlet.http.HttpServlet. L'expert Servlet de JBuilder crée des servlets qui génèrent les types de contenu suivants :

Avec l'expert Servlet, vous pouvez aussi créer des servlets standard, des servlets filtre ou des servlets auditeur (si votre serveur web supporte les spécifications JavaServer Pages v1.2/Java Servlets v2.3).

L'expert Servlet est composé de quatre pages :

Les pages affichées dépendent du type de servlet que vous créez.



Page Nom et type

Paquet et Classe

Dans la première étape de l'expert servlet, vous pouvez choisir le paquet auquel appartiendra le servlet. Vous pouvez aussi entrer le nom du servlet dans le champ Classe.

Générer les commentaires d'en-tête

Si vous voulez répliquer les commentaires d'en-tête ajoutés aux autres classes du projet (voir la rubrique Expert projet dans l'aide en ligne), choisissez l'option Générer les commentaires d'en-tête.

Modèle de thread simple

L'option Modèle de thread simple implémente l'interface SingleThreadModel. Choisir cette option peut rendre votre servlet moins efficace, car le serveur web va mettre les demandes en file d'attente et démarrer une autre instance du servlet pour servir la demande.

WebApp

Sélectionnez le nom de la WebApp où vous voulez exécuter votre servlet, dans la liste déroulante WebApp. Tous les fichiers de contenu web, comme le fichier SHTML du servlet, seront placés dans le répertoire WebApp.

Type de servlet

Les options situées dans la partie inférieure de la boîte de dialogue vous permettent de choisir le type de servlet que vous voulez créer.

Remarque : Ces options sont uniquement disponibles si votre serveur web supporte les spécifications JavaServer Pages v1.2/Java Servlets v2.3. (Tomcat 4.0 est l'implémentation de référence de ces spécifications.) Sinon, un servlet standard est créé par défaut.

Options des types de servlet

Servlet standard Un servlet qui n'est ni un filtre ni un auditeur. L'option Servlet standard est toujours disponible que vous ayez sélectionné la WebApp <défaut> ou une WebApp nommée. Lorsque cette option est sélectionnée pour la WebApp par défaut, le nom du servlet (voir Page Détails de l'application Web) est, par défaut, le nom de la classe simple du servlet, en minuscules. Si la WebApp est une WebApp nommée, l'URL du servlet (également sur la page Détails de l'application Web) se conforme par défaut au motif d'URL suivant : /nomservlet (tout en minuscules).
Servlet du filtre Un servlet qui agit comme filtre pour un autre servlet ou pour la WebApp. Outre le nom, vous devez choisir un motif d'URL pour l'autre servlet (qui doit avoir un nom). Cette option est disponible uniquement si une WebApp nommée est sélectionnée. Si cette option est sélectionnée, la page Détails de l'application Web, où vous nommez le servlet et spécifiez l'affectation du filtre, est la seule autre page disponible dans l'expert Servlet.
Servlet de l'auditeur Un servlet qui est ajouté à la liste des auditeurs de la WebApp. Cette option est disponible uniquement si une WebApp nommée est sélectionnée. Si cette option est sélectionnée, la page Détails du servlet de l'auditeur est la seule autre page disponible dans l'expert Servlet.


Page Détails du servlet standard

Si vous avez sélectionné Servlet standard comme type de servlet dans la page Nom et type de l'expert Servlet, la page Détails du servlet standard est l'étape 2 de l'expert. Cette page vous permet de sélectionner le type de contenu du servlet, les méthodes à implémenter et le fichier SHTML à générer.

Générer le type de contenu

Vous pouvez utiliser la liste déroulante Générer le type de contenu pour choisir le type du contenu de votre servlet. Ces options comprennent :

Implémenter les méthodes

Cette partie de l'expert servlet offre des options pour surcharger les méthodes standard du servlet. HttpServlet fournit une classe abstraite que vous pouvez sous-classer pour créer un servlet HTTP, qui reçoit des demandes depuis un serveur web et envoie des réponses à un client web. Quand vous sous-classez HttpServlet, vous devez surcharger au moins une méthode. Pour plus d'informations sur les méthodes, reportez-vous à la documentation sur les servlets, à l'adresse http://java.sun.com/products/servlet/index.html.

Les méthodes suivantes peuvent être générées automatiquement dans votre servlet :

Options Détails du fichier SHTML

Les options de détail du fichier SHTML sont affichées si vous avez sélectionné HTML ou XHTML dans la liste déroulante Générer le type de contenu. Si vous voulez appeler le servlet depuis une page HTML, comme décrit dans "Invocation d'un servlet depuis une page HTML", sélectionnez l'option Créer un fichier SHTML. Un fichier SHTML, portant le même nom que le servlet, est ajouté au projet. Si vous avez sélectionné une WebApp dans la page Nom et Type de l'expert Servlet, le fichier SHTML sera placé dans ce répertoire.

Si vous voulez exécuter le servlet directement, comme décrit dans "Invocation d'un servlet depuis la fenêtre d'un navigateur", ne sélectionnez pas l'option Créer un fichier SHTML.

Choisissez la couleur de fond du fichier SHTML dans la liste déroulante Couleur du fond. Pour connecter le servlet à partir du fichier SHTML, vous pouvez utiliser la balise <servlet> ou la balise des liens <a href>.



Page Détails de l'application Web

Cette page vous permet de définir rapidement les affectations WebApp de base. La WebApp sélectionnée est utilisée pour exécuter ou déboguer le servlet lorsque vous sélectionnez Exécution Web ou Débogage Web. L'expert Servlet ajoute automatiquement les affectations du servlet aux sections Servlet ou Filters du fichier descripteur de déploiement web.xml. Pour plus d'informations, voir "Déploiement des servlets" ou "Page Filtres" dans "Déploiement de votre application web".

Pour plus d'informations sur l'affectation entre noms de servlets et motifs d'URL, voir "Comment les URL exécutent les servlets" dans "Utilisation des applications web dans JBuilder".

Nom

Le champ Nom s'applique aux servlets standard et aux servlets filtre. Ce champ est affiché pour les servlets standard s'exécutant dans la WebApp <défaut> ou une WebApp nommée, et pour les servlets filtre.

Dans ce champ, entrez le nom du servlet. Pour un servlet standard, c'est le nom utilisé pour exécuter le servlet. Par convention, il est en minuscules.

Le Nom représente une façon rapide d'exécuter un servlet. Par exemple, au lieu de pointer votre navigateur sur le nom de classe complet du servlet s'exécutant sur le serveur web, il suffit de taper : inputform. Cela correspond au servlet nommé formservlet, qui à son tour correspond à la classe servlet http://localhost:8080/servlet/FormServlet s'exécutant en local sur le serveur web Tomcat dans l'EDI de JBuilder.

Motif de l'URL

Pour les servlets standard et les servlets filtre, le champ Motif d'URL est l'endroit où vous choisissez le motif d'URL qui sera utilisé pour exécuter le servlet. Le motif d'URL est toujours en minuscules et précédé d'une barre oblique. Cela est utile lorsque vous invoquez le servlet directement, à partir d'un navigateur. (Voir "Invocation d'un servlet depuis la fenêtre d'un navigateur" pour plus d'informations.)

Un motif d'URL par défaut est proposé. Pour un servlet standard, le motif par défaut est constitué du nom de classe du servlet en minuscules précédé d'une barre oblique : /formservlet. Il doit correspondre au nom complet de la classe du servlet. Si le servlet est un servlet filtre, le champ Motif d'URL a par défaut la valeur /*, ce qui signifie que le filtre est appliqué à toutes les demandes.

Remarque : Ce champ n'est pas disponible si vous n'avez pas sélectionné de WebApp dans la page Nom et Type de l'expert Servlet.

Servlet affecté

Pour les servlets filtre, vous pouvez choisir comment est mappé le servlet - ce peut être au moyen du motif d'URL ou de l'option Servlet affecté.

La liste déroulante Servlet affecté vous permet de choisir un autre servlet dans votre projet qui sera filtré par ce servlet. (Par défaut, ce champ contient le nom du premier servlet de votre projet, en minuscules, précédé par une barre oblique.) Par exemple, si votre projet contient déjà Servlet1.java et Servlet2.java, qui sont tous les deux des servlets standard, le champ Servlet affecté prendra par défaut la valeur /servlet1. La liste déroulante montre tous les autres servlets du projet précédemment affectés. S'il en existe pas, l'option est désactivée.



Page Paramètres

La page Paramètres de l'expert Servlet est l'emplacement où vous saisissez les paramètres du servlet. Les paramètres sont des valeurs transmises au servlet. Les valeurs peuvent être de simples valeurs saisies. Mais, elles peuvent aussi bien affecter la logique de l'exécution du servlet. Par exemple, la valeur entrée par l'utilisateur peut déterminer la table de base de données qui sera affichée ou mise à jour. Ou encore, la valeur saisie par l'utilisateur peut déterminer la couleur du fond du servlet.

Indiquez les paramètres de demande du servlet

La grille de cette page permet de saisir les informations définissant les paramètres de votre servlet. Ces informations généreront des balises PARAM dans la balise FORM du nouveau fichier HTML ainsi que le code de gestion des paramètres dans le nouveau fichier Servletx.java. Les champs marqués par une étoile (*) sont des champs obligatoires.

Remplissez une ligne de la grille pour chaque paramètre.

Nom

Le nom du paramètre. Il est utilisé dans l'attribut NAME de la balise FORM dans le fichier HTML et pour spécifier le paramètre name de l'appel correspondant de getParameter() dans le source Java.

Type

Une liste déroulante dans laquelle vous pouvez choisir le type de variable qui est insérée dans le code source Java de votre servlet pour contenir la valeur du paramètre provenant de la page HTML.

Desc

Une courte description du paramètre. Cette valeur est utilisée pour générer des commentaires et pour intituler le champ de la fiche dans le fichier HTML généré.

Variable

Le nom de la variable qui est inséré dans le code source Java de votre servlet pour stocker la valeur du paramètre provenant de la page HTML.

Défaut

La valeur par défaut du paramètre. C'est la valeur utilisée par le code source Java de ce servlet si un éventuel fichier HTML utilisant ce servlet n'a pas de balise PARAM correspondant à ce paramètre. Pour qu'un fichier HTML fournisse un paramètre, l'attribut NAME dans la balise PARAM doit correspondre exactement à la valeur saisie dans la colonne Nom de cette ligne de la grille. Attention, cette correspondance tient compte des différences majuscules/minuscules.



Page Détails du servlet de l'auditeur

Cette page n'est disponible que si vous avez sélectionné Servlet de l'auditeur comme type de servlet dans la page Nom et Type de l'expert Servlet. C'est l'étape 2, et la dernière étape de l'expert Servlet pour les servlets auditeur. Utilisez cette page pour implémenter une ou plusieurs interfaces de servlet auditeur. Les méthodes correspondantes sont ajoutées au servlet.

L'expert Servlet ajoute automatiquement les auditeurs sélectionnés à la section Listeners du fichier descripteur de déploiement web.xml. Pour plus d'informations, voir "Page Auditeurs" dans "Déploiement de votre application web".