【发布时间】:2012-04-05 22:37:35
【问题描述】:
我在 Java 中有一个 Map,其中包含另一个 Map,如下所示:
Map<String, Map<String, Object>> myMap = ...
我知道这不是传递数据的理想方式,但对于测试而言,它比充实仅用于将数据推送到 JSTL 的类更容易。
话虽如此,我们无法获取二级Map中的值:
${ myMap[someString1][someString2] != null }
加载页面时会导致编译错误:
org.apache.jasper.JasperException: /mypage.jsp (line: 142, column: 9) "${ myMap[someString1][someString2] != null }" contains invalid expression(s): javax.el.ELException: Failed to parse the expression [${ myMap[someString1][someString2] != null }]
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:42)
很奇怪,它在运行 Tomcat 6.0.29 的机器上运行良好,而在运行 7.0.26 的机器上却失败了。
编辑:在这两种情况下,webapp 都使用 JSTL-1.2。
【问题讨论】: