Packadges
util
contient tout ce qui n'est pas classable ailleurs:
- CDSSearch: se charge d'aller recherché les information relative a une étoile au CDS
- Converter: contient une série de convertisseur degré standard/degré sexagésimaux ainsi qu'un pareurs de VOTable qui retourne les valeur contenu dans la colonne ayant l'UCD "ID_MAIN".
- CooConverter: se charge d'analyser une chaine de caractères pouvant contenir un nom d'étoile ou des coordonnées en degré standard ou sexagésimaux écrit de différente manière pour retourné des coordonnées utilisable.
- DSASearch: compose, effectue et retourne le résultat d'une requête Simple Cone Search . L'outil est actuellement orienté vers l'utilisation de DSA et n'est donc pas parfaitement générique mais cela permet de factorisé une partie du code. cette outil n'analyse pas la réponse fournie.
- Displayer: transforme, a l'aide des méta-données, un ResultSet java ou une String contenant une VOTable en code HTML présentant leur contenu. peut également générer un formulaire de saisie a partir des méta-données. peut également générer des colonnes contenant des liens avec pour paramètre le contenu d'autre colonnes.
- Lock: classe ou sont déclaré les objet qui servent de verrou commun aux servlets.
util.SQLConnection
contient tout ce qui est relatif a la mise en place de la connection SQL:
seul l'interface SQLConnectionProvider n'est pas sensé changé. elle définit les spécificité minimum d'un objet fournissant des connexion SQL a notre base.
le seul endroit ou une implémentation de cette interface est appelé est la JSP communhead.
util.displayer
contient tout ce qui est relatif a la classe Displayer du package util:
ToLink definit les parametres d'un lien a rajouté a un tableau de resultat. un vecteur de
ToLink peut etre passé en parametre des fonction d'affichage de Displayer pour rajouter des lien dans les tableaux.
util.parsemeta
contient tout ce qui est relatif au méta-données:
toute les données de notre application sont supposé être dans le même catalogue.
les méta-donnée utilisé par l'application sont stockées dans un document XML obéissant, a l'heure actuelle, au standard de celle de DSA. ont juste été ajouté des marcheur sémantique dans les champs dédié aux descriptions. ce standard sera probablement surchargé dans l'avenir pour séparer la description des marqueur sémantique auquel cas quelle modification mineur de ce jeux de classe devrait suffire a supporter ce changement. actuellement il sont stocké entre "[" et "]" pour les distingué de la description.
la structure se construit toute seul a partir du chemin vers le fichier contenant les méta-données. l'identifiant du catalogue a utilisé est également passé en paramètre mais ne sert qu'a verifié dé la construction que notre base a bien tout les marqueur sémantique demander dans le catalogue. on peut, par ailleurs, refaire cette vérification indépendamment de la construction et avec un autre identifiant.
Cette structure implémente des fonction de recherches en plus des fonction de parcoure habituel.
les marqueur sémantique sont appeler "flag".
JSP
a noté que certaine JSP ne sont pas encodé en "UTF-8" mais en "ISO-8859-1" afin que les formulaire qui s'y trouve supporte certain cratères spéciaux.
Base commune
- index.jsp: point d'entré dans l'application
- communhead.jsp: ecrit l'entete commun a toute les page et initialise les variable commune si ce n'est pas déjà fait. appeler ainssi :
<jsp:include page="communhead.jsp" >
<jsp:param name="titre" value="votre titre ici" />
</jsp:include>
le titre est parametrable. ont peut egualement parametré l'encodage en ajoutant la balise <jsp:param name="charset" value="votre encodage ici" />
les varieble initialisé sont les metadonnée et le fournisseur de connection.
- communbottom.jsp: clos les balise laissé ouverte pas communhead. toujours appeler ainsi :
<jsp:include page="communbottom.jsp" />
login
- loginbox.jsp: appeler dans communhead.jsp pour générer le récapitulatif de connexion.
- login.jsp: formulaire de login. redirige vers loginaction.jsp
- loginaction.jsp: log la personne avec les identifiant et mot de passe en paramètre. décrit l'erreur si il y en a une. Seul cette jsp utilise l'interface d'autentification du JMMC.
- logout.jsp: délog la personne si possible sinon rien.
- signup.jsp: explique la procédure de demande d'accès a l'alimentation de la base.
consultation
- askall.jsp: formulaire de saisie des paramètres de la recherche sur toute la base. pointe vers showall.jsp .
- askvalid.jsp: formulaire de saisie des paramètres de la recherche sur toute la base valid. pointe vers showvalid.jsp .
- askuser.jsp: formulaire de saisie des paramètres de la recherche sur la partie de la base concernant l'utilisateur. pointe vers showuser.jsp . indique qu'il faut se loguer si pas fait.
- showall.jsp: affiche selon les paramètre une liste de commentaire correspondant au critère ou une liste d'étoile correspondant aux critère avec un lien vers leurs détail respectif. ceci dans toute la base.
- showvalid.jsp: affiche selon les paramètre une liste de commentaire correspondant au critère ou une liste d'étoile correspondant aux critère avec un lien vers leurs détail respectif. ceci dans toute les donnée valide de la base.
- showuser.jsp: affiche selon les paramètre une liste de commentaire correspondant au critère ou une liste d'étoile correspondant aux critère avec un lien vers leurs détail respectif. ceci dans toute les donnée concernant cet utilisateur dans la base. l'utilisateur doit être logué pour appeler cette servlets sans quoi ceci lui est indiqué.
- showcomment.jsp: affiche tout les détails de l'étoile ayant le numéro passé en paramètre. si le paramètre "isforcurentuser" est a "yes" et que l'utilisateur est logué alors seul les donnée le concernant seront affiché et les ligne de certaine table auront un lien vers setobsolete.jsp leur correspondant.
alimentation et modification
- feedform.jsp: genere le formulaire de saisie d'un commentaire. pointe sur feedconfirm. une notification a l'utilisateur est faite s'il n'est pas logué.
- feedconfirm.jsp: verifie que les parametre envoyé correspondent a ceux demandé et, dans la mesure du possible, que leur valeur sont correcte. avertie l'utilisateur en cas d'etoile binaire. si tout est correcte, un lien contenant les meme parametre pointant sur feed.jsp est proposé. sinon l'erreur est décrite. cette étape intermédiaire sert de confirmation. une notification a l'utilisateur est faite s'il n'est pas logué.
- feed.jsp: verifie que les argument passé en parametre sont correcte puis ajoute le commentaire dans la base si pas de probleme. dans un premier temps l'etoile est recherché dans la base puis ajouté si inexistante. le commentaire est ensuite ajouté et les coordonnée de l'étoile sont dans tout les cas mis a jour. une notification a l'utilisateur est faite s'il n'est pas logué. cette jsp est al seul a ce servir du verrou. ce verrou est la car on ne peut pas utilisé ceux natifs du SQL car on opere avec plusieurs connexion différente (a cause de DSA).
- setobsolete.jsp: rend obsolète/invalide le commentaire concernant l' identifiant d'étoile et la date passé en paramètre pour l'utilisateur actuellement logué. signal qu'il faut être logué sinon.
--
NicolasHofmann - 23 Jun 2009