在我的项目我每天被打开的JSP时间ASIGN的变量。 我用小脚本尝试过<% %>
在JSP和EL ${}
这给可变后。
但似乎不工作。
<% String korrekteAntwort=${frage.korrekteAntwort};%>
<%session.setAttribute("korrekteAntwort", korrekteAntwort);%>
有后一个错误korrekteAntwort=${}
是不是有可能在小脚本从EL ASIGN直接的变量?
在我的项目我每天被打开的JSP时间ASIGN的变量。 我用小脚本尝试过<% %>
在JSP和EL ${}
这给可变后。
但似乎不工作。
<% String korrekteAntwort=${frage.korrekteAntwort};%>
<%session.setAttribute("korrekteAntwort", korrekteAntwort);%>
有后一个错误korrekteAntwort=${}
是不是有可能在小脚本从EL ASIGN直接的变量?
你混合scriptlet和EL并期望它们运行“同步”。 这是行不通的。 一个是写的JSP的旧校园的方式和另一种是写的JSP的现代生活方式 。 您应该使用一个或另一个,而不是两个。
回来的具体问题,抽油烟机下,EL通过解析变量PageContext#findAttribute()
所以只是做同样的小脚本 。
Frage frage = (Frage) pageContext.findAttribute("frage");
session.setAttribute("korrekteAntwort", frage.getKorrekteAntwort());
然而 ,正如所说,这是使用JSP的旧校园的方式,而不一定为“最佳”的方式,你已经在心中的功能要求,但没有告诉任何东西 。 现代JSP的方法是使用JSTL <c:set>
:
<c:set var="korrekteAntwort" value="${frage.korrekteAntwort}" scope="session" />
这将是session范围内可用${korrekteAntwort}
从该行上,而这正是小脚本的这一行呢。