Nous venons de mettre à niveau Tomcat et le plus récent Tomcat n'aime pas les citations imbriquées dans la balise, nous devons donc alterner entre des citations simples et doubles. Par exemple,
nous avions, P>
<form id="search" action="<fmt:message key='<c:out value="${requestScope.search_url}"/>'/>">
4 Réponses :
Je n'ai pas essayé cela, mais ailleurs en Java, vous pouvez simplement échapper aux citations imbriquées, puis échapper à \ pour les citations à double naisse: éditer: comme il s'agit d'un Attribut, ce qui précède ne fonctionnera probablement pas, mais une approche similaire pourrait fonctionner avec des guillemets simples: p> Alternativement, utilisez un appel de méthode et de renvoyer la chaîne formatée. .. p> p>
Si vous ne voulez pas que vous ne voulez pas mettre à jour tout votre JSP: s Juste pour la mise à niveau Tomcat, définissez la propriété système " org.apache.jasper.compiler.parser.strict_quote_escague " à false.
Le moyen le plus simple de cela consiste à éditer Catalina.sh et à ajouter ce qui suit à java_opts: p>
C'est ce que nous faisons maintenant. Mais nous voulons changer notre JSP pour être conforme.
Vous avez probablement longtemps résolu ce problème, mais dans le cas où quelqu'un d'autre circule sur ceci:
qui ne compilait pas à cause des citations imbriquées, mais à cause des étiquettes imbriquées. Vous ne pouvez pas utiliser de C: Out à l'intérieur de l'attribut de la balise FMT: Message. Cependant, vous pouvez le faire fonctionner en définissant une variable temporaire: p> aussi, appelant votre exemple "Triple" Les citations imbriquées sont trompeuses. Les caractères de double citation entourant la valeur de l'attribut Action de votre étiquette de formulaire ne se comportent pas comme des citations du point de vue du moteur JSP. Tout en dehors d'une {...} {...} el expression, ou en dehors d'une balise em> jsp connue avec un préfixe connu em> est traité comme des octets arbitraires. P> p>
Comme mentionné ci-dessus, vous devez utiliser l'attribut var de la balise C: OUT, éliminant ainsi le besoin de cette étiquette C: Définition.
plusieurs manières:
pour le cas
var code> qui stocke le résultat dans le contexte de la page: P>
var code> attribut également: p>