photo des méthodes !!

 

 

  • rup.cmd.register
  • rup.cmd.unregister
  • rup.cmd.getinfo
  • Conclusion

 

Le coeur d'une servlet est constitué de trois méthodes de bases :

  1. init(ServletConfig config)
  2. doGet(HttpServletRequest req,HttpServletResponse res)
  3. doPost(HttpServletRequest req,HttpServletResponse res)

Au chargement de la servlet la méthode init est appellée afin de charger en mémoire le fichier xml contenant l'ensemble des robots enregistrés. Les données en mémoire sont sous la forme d'arbre de type DOM respectant la spécification w3c. Ainsi tout accés aux données est effectué de façon très rapide.
La methode doGet a ici peu de fonctionnalité puisqu'il n'y a pas de requête http Get possible. Ainsi, elle transfert le travaille vers doPost.
Enfin doPost, effectue l'ensemble du travaille d'analyse de la requête Http. Si l'on rajoute de nouvelles commandes rup au protocole, c'est cette méthode qu'il faut modifier.

Détaillons le fonctionnement de la servlet pour les differents types de requêtes Http

  • Requête Http de type mime Application/rup.cmd.register :

On utilise une fonctionnalité qui n'existe pas dans le protocole Rup : c'est la notion de numéro d'identification.

  • Requête Http de type mime Application/rup.cmd.unregister :


    On introduit ici l'idée d'un crypatage des informations. Ici le codage Base64 fait juste office d'exemple. On pourraît très bien employer dans une implémentation à echelle réelle un cryptage par clef beaucoup plus intéressant.

  • Requête Http de type mime Application/rup.cmd.getinfo :




    Tout le traitement de la requête s'effectue entierement en mémoire vive.
    Une fois enregistré, le moteur de recherche doit fournir son numero d'id, qu'il a reçu lors de son enregistrement, pour toute communication ulterieur avec le server Web.

  • Conclusion
    Le fonctionnement de la servlet est fortement corrélé avec la spécification du protocole Rup.Il est interessant de remarquer que la servlet utilise un arbre en mémoire de type DOM pour enregistrer les robots qui s'enregistrent. Il est tout à fait possible de choisir d'autres alternatives : comme l'utilisation d'une base de données pour stocker les informations. Ce qui permettrait d'éviter une phase de synchronisation entre le fichier Xml stocké sur le disque dur et l'arbre DOM stocké en mémoire vive. Cependant cette approche permet une certaine souplesse quand à l'architecture du server WEB,c'est à dire d'éviter d'imposer la présensence d'une base de donnée du coté du serveur Web. (Cette approche sera implémentée comme une alternative dans un avenir proche ).