jsp打印变量位于<jsp:attribute> </jsp:attribute>中

时间:2012-09-12 11:45:41

标签: java jsp tomcat

如何在<jsp:body>

中打印HTTP Request参数

以下不起作用。

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@taglib prefix="t" tagdir="/WEB-INF/tags" %>
<t:basePage>
   <jsp:attribute name="title">Reset Password</jsp:attribute>
   <jsp:attribute name="lib">lib/</jsp:attribute>
   <jsp:attribute name="bodyClass">loginPage</jsp:attribute>
   <jsp:body>
      <%= request.getParameter("msg"); %>
   </jsp:body>
</t:basePage>

我收到此错误: HTTP Status 500 - /message.jsp (line: 39, column: 22) Scripting elements ( &lt;%!, &lt;jsp:declaration, &lt;%=, &lt;jsp:expression, &lt;%, &lt;jsp:scriptlet ) are disallowed here.

1 个答案:

答案 0 :(得分:1)

尝试使用Expression Language

${requestScope.param.msg} 

或者只是

 ${msg} 

可能是您的配置禁用了脚本元素。

修改

这与您当前的要求无关,因为脚本元素似乎在您的最后被禁用。但是下面的语法不正确

<%= request.getParameter("msg"); %>

您必须永远不要在; expression_here

之后添加<%= #expression_here %>

原因很简单,它转换为语法不正确的out.print(msg;);