今天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
以上就是小编为大家带来的jsp页面中表达式语言中的$符号不起作用的解决方法全部内容了,希望大家多多支持~
jsp表达式语言
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。