【问题标题】:JSP EL tag not correctly parsed?JSP EL 标记未正确解析?
【发布时间】:2013-03-22 11:30:41
【问题描述】:

在我的 Servlet 中我这样做:

request.setAttribute("header", "templateheaderv1");
request.getRequestDispatcher("/master.jsp").forward(request, response);

在我的 master.jsp 页面中,我这样做:

<jsp:include page="/template/${header}.jsp" /> 

我应该得到的是这个:

<jsp:include page="/template/templateheaderv1.jsp"/>

但我得到的是这个:

<jsp:include page="/template/javax.servlet.jsp.el.ImplicitObjectELResolver$ImplicitObjects$7@6e4eeaaf.jsp"/>

这显然会引发 FileNotFoundException。

我的 web.xml 的标题是这样的:

<web-app 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">

这应该足以解析 EL 变量,不是吗?

我正在使用 Jetty 8 运行这个无容器

【问题讨论】:

    标签: java jsp el


    【解决方案1】:

    您的变量名称与 implicit objects 之一(HTTP 标头映射)发生冲突。将名称更改为其他名称。

    【讨论】:

    • 你是对的 :) 谢谢。您是否可能有一个链接,其中包含已占用属性名称的概述?顺便说一句,我会在两分钟内接受你的回答 :)
    • @Pieter-Jan:他已经提供了一个链接,其中列出了隐式对象。
    • 大声笑,也许他编辑了它,或者我查看了它。无论如何谢谢:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-28
    相关资源
    最近更新 更多