Programmation des réseaux avec Java

Mini projet


Démarrage - Serveur d'opérations arithmétiques

En utilisant le serveur de servlettes Tomcat, on souhaite écrire un service permettant de réaliser des opérations arithmétiques simples sur des entiers.

  1. À partir du fichier formCalcul.html que vous devrez récupérer et modifier, créer une classe servlette Compute qui est sollicitée lorsque le bouton Calculer du formulaire est pressé. Vous prendrez également en compte dans l'architecture de Tomcat les contraintes suivantes:
  2. Faites en sorte que le comportement suivant soit réalisé (pensez au dispatch):

Plus intéressant - Opérations et choix contextuels

Sur le même principe que l'exercice précédent, on veut mainteant ajouter un certains nombre de services pour l'utilisateur. Plus particulièrement, on souhaite que chaque client qui utilise le service d'opération arithmétique puisse disposer d'une mémoire permettant de mémoriser une valeur entière. Voici l'ensemble des opérations que chaque client doit pouvoir effectuer à partir de liens présents dans une page d'accueil accessible à l'URL http://localhost:8180/TDbasic/choix, dite "page d'accueil dynamique" (dynamique car son contenu est variable en fonction de ce qu'a fait le client):

  1. Effectuer un calcul: dans ce cas, le client est redirigé sur la page formCalcul.html.
  2. Réinitialiser la mémoire: cette opération consiste à supprimer le fait que le client dispose d'une mémoire et non à mettre sa mémoire à 0.
  3. Rappeler le résultat contenu dans la mémoire.
  4. Mettre le résultat du calcul qu'il vient d'effectuer dans la mémoire
  5. Ajouter le résultat du calcul qu'il vient d'effectuer au contenu de la mémoire.
  6. Soustraire le résultat du calcul qu'il vient d'effectuer au contenu de la mémoire.
Si le lien permettant d'effectuer un calcul (1.) est toujours présent dans la page d'accueil dynamique, les autres liens peuvent y apparaitre ou non. En effet, pour des raisons évidentes de cohérence, les opérations (2.) et (3.) ne doivent être offertes que si une mémoire est déjà associée au client. De même, les opérations (4.), (5.) et (6.) ne peuvent être accessibles que si un calcul vient d'être effectué. De plus, les opérations (5.) et (6.) ne doivent pas être accessibles si aucune mémoire n'est associée à ce client. En revanche, l'opération (4.) crée une mémoire si aucune mémoire n'existait pour ce client.

Vous devez concevoir une architecture et une organisation dans Tomcat permettant de réaliser ces exigences en utilisant les servlettes, le dispatch et les sessions (on supposera que les clients acceptent les cookies). En revanche, le seul formulaire de votre webapp doit être celui de calcul (formCalcul.html), autrement dit, le reste de la navigation doit se faire par des liens et non par des formulaires.


Laissez cours à votre imagination - Options

Toute option qui permettrait de rendre l'utilisation de cette calculette plus rigolotte est la bienvenue : tracer des courbes construites en faisant appel à une autre application et visualisables dans un navigateur, par exemple. N'importe quoi, mais au moins une amélioration notable par rapport à ce qui est décrit précisément ci-dessus est attendue.

A rendre - Modalités

Les archives web (.war) générés par Tomcat se prêtent bien à l'exercice de livraison de votre mini projet. Vous penserez à ce qu'il soit bien exécutable tout seul (qu'il contienne tout ce dont il a besoin), qu'il y ait dedans une documentation (utilisateur, programmeur, installateur...) et qu'il fonctionne (testez le sur une autre machine que la votre). C'est à rendre le 10 Avril au plus tard.

Etienne.Duris@univ-mlv.fr - © Université de Marne-La-Vallée - Mars 2005