• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
ENIB cours CAI Web - Séance 3 - JSP/Servlet - TP
 

ENIB cours CAI Web - Séance 3 - JSP/Servlet - TP

on

  • 876 views

 

Statistics

Views

Total Views
876
Views on SlideShare
876
Embed Views
0

Actions

Likes
0
Downloads
26
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    ENIB cours CAI Web - Séance 3 - JSP/Servlet - TP ENIB cours CAI Web - Séance 3 - JSP/Servlet - TP Presentation Transcript

    • TD - Servlet / JSP
    • Import du projetSous Eclipse● Importer le projet - servlet-alone○ context root : servlet-alone○ content directory : web○ ne pas générer le deployement descriptor web.xml● Lancer le tomcat sous Eclipse○ project○ run/as - run on server○ configurer le server Tomcat 6 avec le port 8080○ vérifier que le serveur est lancé http://127.0.0.1:8080/servlet-alone/beer
    • Les Pojos● Pojo Beer avec les attributs suivants :○ String name;○ String brewery;○ String country;○ double alcohol;● Pojo Bar avec les attributs suivants :○ Beer beer○ int stock
    • BusinessLa classe BarBusiness permet deffectuer les actions sur le bar :● ajouter une bière (newBeer)● supprimer une bière (removeBeer)● obtenir la liste des bières (getBeers)● obtenir le stocke du bar (getBar)● mettre des bière en stocke (checkinBeer)● sortir une bière du stocke (checkoutBeer)
    • Servlet BeerServlet● Mapping {web app context}/beer voir web.xml<servlet>...<servlet-name>BeerServlet</servlet-name><servlet-class>fr.enib.cai.servlet.BeerServlet</servlet-class></servlet> ...<servlet-mapping><servlet-name>BeerServlet</servlet-name><url-pattern>/beer/*</url-pattern></servlet-mapping>● GETRenvoie la liste de bières dans la page /WEB-INF/views/beer.jsp● POST○ sur lurl {web app context}/beer/add ajoute une bière et retourne le fluxJSON de la bière ajoutée. {"name":"1664","brewery":"Kronenbourg","country":"France","alcohol":5.5,"id":3}○ sur lurl {web app context}/beer/delete supprime une bière et retournele flux JSON de la bière supprimée○ sinon affiche la page /WEB-INF/views/404.jsp
    • Servlet BarServlet● Mapping {web app context}/beer voir web.xml<servlet>...<servlet-name>BarServlet</servlet-name><servlet-class>fr.enib.cai.servlet.BarServlet</servlet-class></servlet> ...<servlet-mapping><servlet-name>BarServlet</servlet-name><url-pattern>/bar/*</url-pattern></servlet-mapping>● GET et POST qui renvoient Hello Enib
    • Servlet BarServletMethode Get● Méthode idempotent1. Récupérer le bar avec la méthode getBar (liste de BeerStock)2. Ajouter lattribut "bar" à la request avec comme object la collection deBeerStock3. Forwarder la requête à la jsp privée /WEB-INF/views/bar.jspLe résultat peut être consulté à lURL suivante :http://127.0.0.1:8080/{context}/bar
    • Servlet BarServletMethode Post checkInBeer● Méthode non-idempotentLe bouton + dans la page web) génére lurl suivante (utilisation de la methodePOST):http://127.0.0.1:8080/{context}/bar/checkInBeeravec le paramètre id=2le paramètre ID corresponds à lidentifiant de la bière.Lexecution de cette méthode POST doit● ajouter une bière dans le stock● ajouter lattribut beerStock à la requête● forwarder à la jsp bar-json.jspCette jsp produit le json suivante {id=3,stock=12}Actionner le bouton + doit ajouter une bière dans le stock et mettre à jour lapage Web
    • Servlet BarServletMethode Post checkOutBeer● Méthode non-idempotentLe bouton + dans la page web) génére lurl suivante (utilisation de la methodePOST):http://127.0.0.1:8080/{context}/bar/checkOutBeeravec le paramètre id=2le paramètre ID corresponds à lidentifiant de la bière.Lexecution de cette méthode POST doit● retirer une bière dans le stock● ajouter lattribut beerStock à la requête● forwarder à la jsp bar-json.jspCette jsp produit le json suivante {id=3,stock=12}Actionner le bouton - doit retirer une bière dans le stock et mettre à jour la pageWeb
    • Servlet BarServletExtra (pour ceux qui sennuient)Le bouton + et - ouvre un lightwindow permettant de choisir le nombre debières à ajouter ou retirer du stock.La jsp beer.jsp a un formulaire caché addbeerLa lightbox est gérer avec BootstrapLe formulaire est envoyé en Ajax avec la methode de JQuery ajaxFormBonne chance ;)
    • Tomcat Beer● Produire le war (sous Eclipse)○ File->export->web->War■ nom du war servlet-alone.warOption (pour ceux qui sennuient...)● Deployer le war dans le Tomcat○ copier le war dans /opt/apache-tomcat-6.X.X/webapps/● Démarrer le Tomcat○ /opt/apache-tomcat-6.X.X/bin/startup.sh■ port découte définit dans le server.xml (connector)■ les logs (catalina.out) sont riches dinformation● Arrêter le Tomcat○ /opt/apache-tomcat-6.X.XX/bin/shutdown.sh
    • CloudBee(r)s