• 10 heures
  • Facile

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 13/01/2020

Entraînez-vous à finaliser l'application de discussion

Connectez-vous ou inscrivez-vous gratuitement pour bénéficier de toutes les fonctionnalités de ce cours !

À vous de jouer !

Votre mission est de terminer l'application Palabres en développant le reste des fonctionnalités attendues.

screenshot

 Socle de départ

Pour cette activité, vous pouvez soit partir de votre livrable précédent, soit de la correction fournie.

Travail demandé

Dans cette activité, vous devez :

  • intégrer Spring pour l'injection de dépendances dans les éléments Struts,

  • mettre en place un filtrage global des actions accessibles à l'utilisateur (via un interceptor),

  • mettre en oeuvre les éléments de Struts vus dans la partie 2 pour fiabiliser/simplifier le fonctionnement de l'application (par exemple : interceptors, stack, packages, gestion des exceptions...),

  • implémenter les cas d'utilisation suivants en AJAX :

    • envoyer un message d'un Channel existant,

    • récupérer les nouveaux messages dans un Channel.

Les 2 cas d'utilisation ci-dessus sont à implémenter en AJAX sur la page affichant les messages d'un Channel. La page n'est donc pas rechargée lors de ces actions !

La récupération des nouveaux messages (c'est-à-dire tous les messages postés dans le channel après le dernier message affiché), sera déclanchée :

  • via un bouton,

  • de manière automatique toutes les 5 secondes si l'option "Auto-refresh" est activée par l'utilisateur. Cette option peut faire l'objet d'une case à cocher à côté du bouton de refresh par exemple.

À vous de jouer... ;)

Vérifiez votre travail !

Vérifiez que vous avez bien les éléments suivant :

  • Les actions (hormis celles de connexion/déconnexion) sont filtrées par l'interceptor et plus dans les actions ;

  • Les requêtes AJAX sont filtrées par l'interceptor ;

  • Si l'accès est interdit sur une requête AJAX, il n'y a pas de redirect sur l'action de Login ;

  • Les nouveaux messages en AJAX sont récupérés via le bouton « Refresh » ;

  • Une option d'auto-refresh est présente ;

  • 3 packages minimum sont présents :

    • pour les actions publiques,

    • pour les actions privées,

    • pour les action "AJAX".

Exemple de certificat de réussite
Exemple de certificat de réussite