[jsp] jsp页面中表达式语言中的$符号不起作用了

本文介绍了解决Tomcat启动后JSP页面$符号显示异常的问题。原因是Tomcat版本与web.xml中配置的Servlet/JSP规范版本不匹配。通过调整Tomcat版本和JDK版本,最终解决了该问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天myeclipse里部署了之前做的一个测试项目,发现jsp里的$符号tomcat启动后页面上显示出来了,百度搜了下别人也有类似的问题出现过。经提醒原来是web.xml配置的version设置的是2.5而我tomcat5启动的。是tomcat的版本低于web的版本,从而导致$符号不能正常使用。 

后将tomcat5改用tomcat6。jdk采用1.6 启动spring2.5项目。$显示问题解决。

以下是网上摘录的详细说明:

在jsp页面中用表达式语言中的$符号,如${pageScope.title}输出时,输不出内容还是${pageScope.titl}原封不动的显示
     但是事实上,通过在当前jsp页面运行下面代码,可以测试pageContext.getAttribute("title")是有值的
复制内容到剪贴板代码:     
<%
  ...
  pageContext.setAttribute("title",aboutusBean.getTitle());
  System.out.println("pageContext="+pageContext.getAttribute("title"));
%> 
     
我是用的Tomcat5.5的版本,它只支持servlet/JSP规范版本:2.4/2.0,而我的web.xml中配置的是2.5规范,所以导致$符号不能正常使用了。
1.检查你的web.xml文件,保证是Servlet 2.4以上版本的,并没有禁用EL。
2.检查你的Web服务器,保证支持Servlet 2.4及以上规范。
3.注意Tomcat的版本,每个Tomcat的版本支持Servlet的规范是不一样的
4.Tomcat的版本及支持的Servlet的规范如下:
Tomcat:6.0.13          实现的servlet/JSP规范版本:2.5/2.1
Tomcat:5.5.23          实现的servlet/JSP规范版本:2.4/2.0
Tomcat:4.1.36          实现的servlet/JSP规范版本:2.3/1.2
Tomcat:3.3.2            实现的servlet/JSP规范版本:2.2/1.1

转载于:https://www.cnblogs.com/kentyouyou/archive/2013/05/06/3063213.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值