Servlets ExperSHOP
       
      Page 
      Principale Table  
       Pour tout 
        rapport de bug ou suggestion, envoyez un mèl au Support 
        ExperLog 
        
  Servlets ExperSHOP
  Son rôle principal est d'interpréter des pages DynHtml, pour
  générer dynamiquement du contenu HTML.
  Tout ce qui concerne la gestion de la session client (déterminer qui
  est connecté) et du panier d'achats est transparent pour l'utilisateur.
   
  ExperSHOP se compose de plusieurs servlets: 
   
    com.expershop.lite.ExperSHOP 
     est le servlet ExperShop : dites-lui quelle page DynHtml afficher, 
     et quelle action éxécuter.  
     Le servlet ExperSHOP tient à jour le contenu du panier d'achats 
     du client. 
     En particulier, le servlet ExperSHOP dispose d'un
     paramètre appelé ShoppingCart, qui permet
     d'itérer sur le contenu du panier d'achats, d'afficher le prix
     total des produits présents dans le panier, etc... 
    com.expershop.lite.ESAdminServlet 
     est le servlet d'administration : ses fonctions sont équivalentes à celle
     du servlet ExperSHOP, avec des fonctions supplémentaires comme un
     contrôle d'accès par mot de passe, des outils pour gérer les commandes
     clients dans un site marchand, etc... 
    com.expershop.lite.ESUploaderServlet
     est le servlet d'upload de fichier sur le serveur. Cette servlet permet
     de telecharger sur le serveur un ou plusieurs fichiers. 
   
  Paramètres HTTP
  Le servlet ExperShop a besoin des paramètres HTTP suivants :  
  
    -  
Page: 
     La page DynHtml à afficher, en relatif par rapport au répertoire 
     ESRootDir/ESTemplates/Shop pour le servlet ExperSHOP, ou
     ESRootDir/ESTemplates/Admin pour le servlet d'administration.
     (OBLIGATOIRE)  
    -  
Action: 
      L'action à effectuer avant d'afficher la page (FACULTATIF) 
      Exemple: l'action prédéfinie ESAddToCart 
      sera utilisée pour ajouter un article dans le panier d'achats, 
      avant d'afficher son contenu. 
      Voir le Guide des Actions ExperSHOP pour 
      plus de détails.  
    -  
ActionFailed: 
      La page DynHtml à afficher en cas d'échec d'una action 
      (FACULTATIF, n'a de sens que si le paramètre Action est défini). 
    -  
Cache:
      Si ce paramètre est présent et égal à
      "N" ou "n", la prochaine page ne sera pas mise dans le cache du browser
      (par defaut, le cache est activé).  
    ContentType: L'alias de "Content Type" MIME pour la
     prochaine page (FACULTATIF, défaut text/html).
     Les alias de ContentType et les types MIME qui leur correspondent sont
     définis dans le fichier de configuration de l'application
     (voir les propriétés "contenttype.list" et
     "contenttype.[alias].value" dans le 
     documentation de configuration. 
    - La valeur du "cookie" (identifiant de session) ExperSHOP :
      nécessaire à
      ExperSHOP pour savoir qui est connecté. 
 
    - Tout autre paramètre qui peut être nécessaire à 
      ExperSHOP pour interpréter la prochaine page DynHtml (par exemple, 
      une Référence Produit pour afficher une page DynHtml qui 
      détaille les propriétés d'un produit). 
 
   
  La première fois que le servlet est appelé, un nom d'application
  peut lui être spécifié, en utilisant un
  paramètre HTTP appelé "S_": ce paramètre est
  nécéssaire si vous souhaitez 
  supporter plusieurs applications (par exemple, des sites marchands multiples).
  
  Exemple:  
   
  <a href=com.expershop.lite.ExperSHOP?S_=SurfShop>
  Surf Shop</a><br>
  <a href= com.expershop.lite.ExperSHOP?S_=Supermarket>
  Faites vos courses!</a><br>
   
  Exemple de lien HTTP vers une page ExperSHOP, dans une page DynHtml
  (liste des rayons de la boutique) :  
  
  <a href= com.expershop.lite.ExperSHOP?$COOKIE$&Page=ESListeRayons.tmpl>
  Rayons</a>
   
  $COOKIE$ sera remplacé par toute l'information nécessaire à ExperSHOP 
  pour savoir qui est connecté. 
  Page dit à ExperSHOP quelle page DynHtml afficher lorsque l'utilisateur 
  clique sur le lien. 
       
  Voir le Guide DynHtml pour plus de détails.  
   Panier d'achats, et autres "Data Sets" prédéfinis
  Dans les pages DynHtml, vous pouvez boucler sur des "data sets" (jeux de
  données, comme par exemple des résultats de requêtes SQL) et afficher 
  leur contenu.
  Certains "Data Sets" sont prédéfinis, et toujours accessibles: 
   
    - Le panier d'achats (nom du data set: 
ShoppingCart): voir
     le document utilisation du panier d'achats. 
    - Le fichier de configuration de l'application (nom du data set:
     
ShopConfig) : chaque propriété définie
     dans le fichier de configuration peut être affichée dans une
     page DynHtml, en spécifiant
     $ShopConfig:[nom-de-propriete]$; par exemple,
     $ShopConfig:shop.Currency$ affiche la valeur de la
     propriété shop.Currency (devise utilisée).  
    - La date courante (nom du data set: 
CurrentDate): voir le
     document utiliser les dates dates. 
   
  Paramètres et Data Sets spécifiques du servlet d'Administration
  Voir la documentation du servlet d'administration
  pour plus de détails.
   
  La servlet com.expershop.lite.ESUploaderServlet permet d'uploader des fichiers
  textes ou binaires. Il faut préciser le ou les fichiers source qui doivent être uploader, le 
  répertoire de destination, ainsi que l'url de redirection qui sera utilisé  une fois que 
  l'upload est terminé.
  Les paramètres obligatoires sont les suivants: 
   
    - urles - url de redirection.
 
    - overwrite - on ou off. Si on, le fichier sera écrasé, sinon le fichier ne
        sera pas écrasé.
 
    - uploadfile - nom du fichier à uploader.
 
    - uploadfile[n] avec n > 1 - nom d'un fichier à uploader.
 
    - uploaddirectory - répertoire de destination, ce répertoire est un chemin relatif. Il est
        calculé à partir du chemin décrit dans le fichier de configuration de l'application (app.UploadDir):
 
        [valeur de app.UploadDir]/[valeur de uploaddirectory] 
     
      Exemple:
  
  <form enctype=multipart/form-data method=POST 
             action=com.expershop.lite.ESUploaderServlet>
    <input type=hidden size=20 name="urles" 
             value="/servlet/com.expershop.lite.ExperSHOP?$Cookie$&Page=MyPage.tmpl"><p>
    <input type=hidden size=20 name="overwrite" value="on">
    file to upload :        <input type=file size=20 name=uploadfile value=><p>
    destination directory : <input type=text size=20 name=uploaddirectory 
             value=unRepertoire/d/upload><p>
    <input type="submit" name="UPLOADSERVLET" value="UPLOAD">
</form>
  
     |