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>
|