2

我有一个具有以下代码的 JSP 页面:

<td colspan=2>
    <div align="right">         
        <jsp:include page="/field_help.jsp" flush="true" >
            <% if(researchTabON) { %>
                <jsp:param name = "Command" value ="research"/>
            <% } else { %>
                <jsp:param name = "Command" value ="error"/>
            <% } %>
            <jsp:param name="Location" value="paperworkadmintool/xml/pwAdminFieldHelp.xml"/>
        </jsp:include>
    </div>
</td>

上面的代码片段在WAS 6上运行良好,但是当我尝试在Tomcat上运行相同的代码时,它会抛出以下异常:

/my_page.jsp(71,7) Expecting "jsp:param" standard action with "name" and "value" 
    attributes org.apache.jasper.JasperException: /my_page.jsp(71,7) Expecting 
    "jsp:param"  standard action with " name"  and " value"  attributes

at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:88)
at org.apache.jasper.compiler.Parser.parseParam(Parser.java:843)
4

4 回答 4

3
<%
String command = ... ;//calculate your desired value here
%>
    <jsp:include page="/field_help.jsp" flush="true" >
        <jsp:param name="Command" value="<%=command%>"/>
        <jsp:param name="Location" value="paperworkadmintool/xml/pwAdminFieldHelp.xml"/>
    </jsp:include>
于 2012-04-24T16:34:29.657 回答
0

:- 该动作标签允许在处理请求时将URL指定的HTML或JSP页面等静态或动态资源包含在当前JSP中。该包含标签包含2个属性1.page:类似于页面Diretive标签。2.flush:取true或false,表示在包含资源之前是否需要flush buffer。默认值为false。

于 2013-01-02T07:22:32.983 回答
0

Tomcat 显然不喜欢这种语法。当正文为空时,您通常会收到此错误。<jsp:include>显然,这些 scriptlet 生成了令人困惑的 Java 代码。尝试如下更改:

<jsp:include page="/field_help.jsp" flush="true" >
    <jsp:param name="Command" value="<%=(researchTabON ? "research" : "error")%>"/>
    <jsp:param name="Location" value="paperworkadmintool/xml/pwAdminFieldHelp.xml"/>
</jsp:include>
于 2012-04-24T13:47:42.383 回答
0

想添加到这个线程。我正在做一个 weblogic to tomcat switch,并且遇到了同样的错误。就我而言,这是因为 weblogic 可以使用 HTML 注释,但 tomcat 不行。

    <jsp:include page="/test.jsp"> <!-- COMMENT -->
      <jsp:param name="vType" value="<%=name%>" /> 
    </jsp:include>
于 2017-05-25T14:17:33.850 回答