<%= %>需要一个表达式,其值将打印到JSP的编写器中。以下
<%= foo %>
因此等于
out.print(foo);request.getSession(true).setAttribute("state","firstNumber")是一个类型为void的表达式。而且您不能打印空白。
您想要的只是
<% request.getSession(true).setAttribute("state","firstNumber") %>但是,当然,由于无数次被重新定义,因此不应在JSP中使用scriptlet。JSP是视图组件,仅应使用JSP
EL,JSTL和其他自定义标签生成HTML。更不用说设置会话属性通常是一个坏主意,在视图组件中更是个坏主意,除了打印到JSP编写器之外,它不会有任何副作用。



