Meilleures pratiques de programmation JSP : Utiliser le bean de données StoreErrorDataBean pour la gestion des erreurs
Pour afficher des messages d'erreur spécifiques au magasin dans les pages JSP, utilisez le bean de données StoreErrorDataBean.
Ce bean de données fournit de meilleures méthodes d'accès get pour :
- Récupérer la clé d'erreur du magasin, <ECMessageKey>.<Error Code>
- Récupérer les paramètres du message d'erreur, c'est-à-dire les paramètres de substitution utilisés dans les messages d'erreur
Dans le mappage des codes d'erreur aux messages d'erreur, le bean de données StoreErrorDataBean s'appuie sur l'existence du fichier de propriétés du message d'erreur du magasin, storeErrorMessages_locale.properties, dans le répertoire suivant :
- WC_eardir/Stores.war/WEB-INF/classes/ storedir
- workspace_dir\Stores\Web Content\WEB-INF\classes\ storedir
Le fichier de propriétés du message d'erreur du magasin doit contenir des définitions de messages d'erreur, telles que les suivantes :
# UserRegistrationAddForm.jsp
_ERR_CMD_INVALID_PARAM.2020 = Type an e-mail address in the E-mail
address field.
_ERR_CMD_INVALID_PARAM.2050 = Type your password in the Password
field.
# UserRegistrationUpdateForm.jsp
_ERR_AUTHENTICATION_MINIMUMLENGTH_PASSWORD.2200 = The password you
have entered contains fewer than {0} characters.
Ensure that your
password is at least {0} characters in length,
including {1}
digit(s) and {2} letter(s), and try again.
Voici un exemple de l'utilisation de StoreErrorDataBean :
<wcbase:useBean id="storeError" classname="com.ibm.commerce.common.beans.StoreErrorDataBean" scope="page"> <c:set target="${storeError}" property="resourceBundleName" value="${sdb.jspStoreDir}/storeErrorMessages" /> </wcbase:useBean> <c:if test="${!empty storeError.key}"> <c:set var="errorMessage" value="${storeError.message}" /> </c:if>