我有一个在Tomcat5.5上运行的JSP页面。我有以下代码:
<c:forEach var="i" begin="1" end="10" step="1">
<c:out value="${i}" />
<br />
</c:forEach>我得到的输出是:
${i}
${i}
${i}
${i}
${i}
${i}
${i}
${i}
${i}
${i} 我搞不懂为什么forEach循环可以工作,但输出却不能工作。任何人所能提供的任何帮助都将是最好的。
发布于 2009-04-27 15:21:05
我知道它在默认情况下应该是打开的,但我经常遇到EL处理没有发生的页面(甚至是更改行为的同一页面)。将以下内容添加到任何此类页面的顶部应可解决此问题:
<%@ page isELIgnored="false" %> 我将它添加到每个页面,因为它不会造成伤害,而且我仍然不知道偶尔导致页面停止解释EL表达式的根本原因。
发布于 2011-08-12 11:13:24
我只是遇到了同样的问题,一直在试图找出哪里出了问题。
我从头开始开发了很多web应用程序。为什么这个人突然不合作了?
一个不同之处在于这次我使用了maven webapp原型来生成项目结构。它创建了一个web.xml文件,如下所示:
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
<display-name>Archetype Created Web Application</display-name>
</web-app>一旦我意识到这是我的问题,我确信我找到了答案。因此,我复制了我的2.5 web.xml标头中的一个,重新构建并重新部署。没有雪茄。不敢相信这不是问题所在。清理了项目,重新启动了tomcat。不是的。
RHSeeger的回答让我尝试放入<%@ isELIgnored="false“%>。这就解决了问题。但我仍然想知道为什么el一开始就被忽视了。
我认为el被忽略是因为我的web.xml出了问题,所以我仔细检查了它,并与我知道工作正常的另一个was应用的web.xml进行了比较。没有明显的区别。
然后,我从我的JSP中删除了<%@ page isELIgnored="false“%>,并重新部署,假设el不会再次求值,但令我惊讶的是,el的求值结果很好!
然后,我认为这一定是某种缓存问题,我撤消了对web.xml的更改以重新创建该问题。我重新部署了,但即使web.xml不好,el仍然可以正确评估。然后我清理了我的整个项目(我正在使用一个分解的部署),清除分解的目录并重新创建它。然后我重新启动了tomcat。尽管web.xml很差,但el似乎仍得到了正确的评估。
我终于明白了。我只是在JSP中的某个位置添加了一个空间,对其重新打包,然后刷新页面。对啰!现在,el没有得到评估。
所以问题出在web.xml上。如果JSP没有被重新编译,那么它会变得更加复杂,除非它们发生了变化。不确定tomcat是否使用MD5和来决定是否需要重新编译JSP或重新编译什么。另一种可能是我使用的是tiles,我知道它有一个缓存机制,但我不希望它能在tomcat重启后存活下来。
无论如何,除非您在修复web.xml之后修改JSP,否则一切都无法确定EL是否会重新开始工作。希望这不会让别人头疼。如果有人能告诉我,是tomcat而不是重新编译JSP还是tiles缓存JSP的输出,我也很感兴趣。我非常确定这是重新编译,因为在编译时,JSP应该弄清楚如何处理${} el表达式,对吧?Tiles实际上不能缓存被替换到el表达式中的内容,否则会出现各种问题。
发布于 2014-08-19 06:01:15
导致问题的是web.xml中的头文件
下面的maven生成的头阻止了EL的求值。
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>使用下面的头eval的EL。
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">https://stackoverflow.com/questions/793983
复制相似问题