Académique Documents
Professionnel Documents
Culture Documents
Architecture de l’Atelier
On retrouve l’architecture J2EE de base. Les différents éléments qui composent notre
solution sont décrits dans la figure qui suit.
Dans le cadre de ce TP le Serveur http et le Serveur d’Application (Web Container) seront
utilisés.
Nous allons aussi réutiliser le formulaire et la ServletBonjourForm dévelopée dans le TP
qui précède. L’IDE est au choix.
Problématique
Nous allons dans cette manipulation valider les points suivants :
- La méthode service est neutre par rapport à la méthode http c’est à a dire fonctionne
avec Get/Post indifféremment
- La méthode Get appelle doGet
- La méthode Post appelle doPost
- Les paramètres avec Get sont envoyés dans le formulaire
- Les méthodes Get/post peuvent être utilisés simultanément dans une Servlet. Si l’URL
de la Servlet est appelée directement alors la méthode doGet est déclanchée si elle
appelée par un formulaire dont l’action est POST alors la doPost est appelée. Cette
technique permet d’avoir des affichages différents selon la technique d’appel (direct ou
via un form).
méthode doPost qui retourne un autre message (ex : Hello de doPost) et Résumez vos
constatations dans le tableau suivant
Rappelez-vous les deux méthodes doGet et doPost peuvent cohabiter dans la même
Servlet elle seront déclenchés selon la méthode http utilisée. SI l’URL de la Servlet est
introduite directement dans le navigateur ou formulaire avec GET alors appel à doGet
autrement c’est doPOst.
Remarques : Le cache du navigateur peut vous induire en erreur dans certains cas.
Pensez à rafraîchir la page. On verra la désactivation du cache dans un autre atelier.
Cas Méthode HTTP Méthodes dans Servlet Fonctionne oui/non et message affiché
1 Form avec GET Service
Questions
1. Que se passet t-il si la servlet contient la méthode service et en même temps une(ou
deux) méthode(s) doGet et doPost ?
2. Testez les méthode init et destroy. Redéfinir ces méthodes dans votre Servlets et
vérifiez que init est appelée une et une seule fois au chargement de l’instance
indépendamment du nombre de requête. Vérifiez aussi que destroy est appelée à la
destruction de l’instance.