Problème
Lorsque vous soumettez un formulaire avec une entrée de caractères UTF-8 (pas dans le jeu de caractères ISO-8859-1) et que la sortie du formulaire est écrite, le serveur sort les mauvais caractères.
Solution
Définissez le type de contenu pour utiliser le codage UTF-8. Par exemple :
<%@taglib uri="/libs/CFC/resources/jstl/c.tld" prefix="c" %> <form method="post"> <input name="searchterm" value="<c:out value="${param.searchterm}" />" /><input type="submit" /> </form>
Exemple:
Lorsque l'utilisateur insère «Ã» (a-Umlaut) dans un champ de formulaire (zone de saisie) et clique sur Soumettre, la boîte de saisie affiche «ï¿½» après l'aller-retour JSTL.
Le même exemple de page JSP fonctionne correctement dans d'autres moteurs de servlets.
Résultat attendu :
La zone de saisie doit afficher "Ã" (a-Umlaut).
Exemple de solution :
<%@ page contentType="text/html;encoding=UTF-8" %> <%@ taglib uri="/libs/CFC/resources/jstl/c.tld" prefix="c" %> <form method="post"> <input name="searchterm" value="<c:out value="${param.searchterm}" />" /><input type="submit" /> </form>
Informations supplémentaires
Ce problème se produit lorsque l'encodage par défaut dans CQ Servlet Engine est ISO-8859-1.
Accéder à votre compte