Wie übergeben Sie java Variablen von scriptlets zu c:wenn der Ausdruck in der jstl?
was ist der richtige Weg, um Variablen verwenden von Skriptlets in jstl?
Ich weiß nicht, was ist falsch in meinem code:
<%
boolean a = true;
boolean b = false;
%>
<c:choose>
<c:when test="${a}">
<c:set var="x" value="It's true"/>
</c:when>
<c:when test="${b}">
<c:set var="x" value="It's false"/>
</c:when>
</c:choose>
Sieht es aus wie es nicht gehen in dem ganzen block.
InformationsquelleAutor Peters_ | 2014-09-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Variablen in Skriptlets nicht gesehen werden kann in JSTL, da Sie in Expression-Sprache, die in Sachen zwischen
${}
verwendet JSTL, sieht für Attribute in page, request, session oder application. Sie müssen mindestens speichern Sie die variable aus scriptlet in einem dieser Bereiche, dann verwenden Sie es.Dies ist ein Beispiel:
Mehr info:
Als Empfehlung, stoppen Sie die Verwendung von scriptlets. Bewegen Sie die business-Logik der JSP in controller-und view-Logik in die EL, JSTL und anderen tags wie
<Anzeige>
. Mehr info: So vermeiden Sie Java-code in JSP-Dateien?request.setAttribute
undpageCotnext.setAttribute
? Ich möchte meine temp-Variablen werden als von kurzer Dauer wie möglich, und nur beim Rendern, dass die einzelnen jsp-Datei.dies ist im Zusammenhang mit der Gültigkeitsbereich der Variablen. Bitte siehe gewusst Wie: übergeben Sie parameter an die jsp:include-über c:einstellen? Was sind die Bereiche der Variablen in JSP?
InformationsquelleAutor Luiggi Mendoza
Den Standard-Umfang der JSP-Seite. wenn Sie möchten, verwenden Sie die variable Scriptlet, JSTL verwenden Sie folgenden code.
Dann es verwendet werden kann in JSTL.
InformationsquelleAutor Yogendra Joshi