【发布时间】:2024-01-11 20:56:01
【问题描述】:
这一行:
/${initParam['webinf']}${initParam['test']}header.jsp
打印出来:
/WEB-INF/test/header.jsp 如果我将其复制到:
<%@ include file="/WEB-INF/test/header.jsp" %> 完美运行。
但是,如果我直接在这样的语句中使用第一行代码:
<%@ include file="/${initParam['webinf']}${initParam['test']}header.jsp" %>
我得到错误:
Sun Feb 16 15:03:56 GMT 2014: org.apache.jasper.JasperException: /WEB-INF/test/index.jsp (line: 10, column: 9) File "/${initParam['webinf']}${initParam['test']}header.jsp" not found
【问题讨论】:
-
包含指令不解析 EL。动态包含可能,或者您可以使用更像实际模板的东西。静态包含发生在编译时,值未知,并且不进行后期评估。
-
使用动态包含?但是,使用上下文参数有什么意义呢?更容易更改 JSP,无需重新启动。
-