Zugriff auf eine jstl-Variable in einem Scriptlet
Den folgenden code verursacht einen Fehler:
<c:set var="test" value="test1"/>
<%
String resp = "abc";
resp = resp + ${test}; //in this line I got an Exception.
out.println(resp);
%>
Nicht, ich benutze den Ausdruck-Sprache "${test}" scriptlet.warum?
InformationsquelleAutor der Frage reddy | 2013-11-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vollständigen code
Update
Einen JSP-scriptlet wird verwendet, um enthalten keine code-fragment, das gilt für die scripting Sprache, in der die eine Seite. Die syntax für ein scriptlet ist wie folgt:
Wenn Sie die scripting-Sprache auf java, ein scriptlet ist verwandelt in ein Java-Programmiersprache Anweisung fragment und ist eingefügt in die service-Methode des JSP-Seite ein servlet.
In Skriptlets können Sie schreiben Java-code und
${test}
im nicht-java-code.Die nicht im Zusammenhang
InformationsquelleAutor der Antwort Aniket Kulkarni
Den Inhalt Ihrer scriptlet-code (in
<% %>
) ist die java-Sprache code-snippet in das übersetzte servlet-service-Methode (JSP übersetzung in servlet-Klassen). Nur gültige java-syntax werden können, so dass Sie nicht verwenden können, die expression language. Wenn Sie anfügen möchten zwei strings in JSP, die ersten waren, die eine Konstante "abc" und das zweite ist Wert, einige EL können Sie einfach verwendenWenn Sie möchten, speichern Sie das Ergebnis in skriptvariable, gemäß der Antwort von Aniket (obwohl mein Rat ist, zu vermeiden, scripting).
InformationsquelleAutor der Antwort Kojotak