所谓jsp规范就是你的jsp页面能
eg:如果你使用的是servlet2.5规范,那么你编写jsp必须满足JSP2.1规范
一般来说,JSP高版本会一些新特性,如果你在你的JSP页面添加了一些高版本的新特性,那么你的servlet版本也要对应的修改。
如果jsp也servlet版本不对应,也可能会报错。
1.JSP1.2规范是不支持el表达式的,从JSP2.0开始支持EL表达式
Servlet和JSP规范版本对应关系:
Servlet规范版本 | JSP规范版本 | JSF版本 | JAVA EE版本 |
Servlet2.3 | JSP1.2、JSP1.1 | J2EE1.3 | |
Servlet2.4 | JSP2.0 | JSF1.1 | J2EE1.4 |
Servlet2.5 | JSP2.1 | JSF1.2、JSF2.0 | Java EE5 |
Servlet3.0 | JSP2.2 | Java EE6 |
Tomcat所对应的Servlet/JSP规范和JDK版本:
Servlet/JSP Spec | Apache Tomcat version | Actual release revision | Minimum Java Version |
---|---|---|---|
3.0/2.2 | 7.0.x | 7.0.12 | 1.6 |
2.5/2.1 | 6.0.x | 6.0.32 | 1.5 |
2.4/2.0 | 5.5.x | 5.5.33 | 1.4 |
2.3/1.2 | 4.1.x (archived) | 4.1.40 (archived) | 1.3 |
2.2/1.1 | 3.3.x (archived) | 3.3.2 (archived) | 1.1 |
Apache官方对各版本的解释:http://tomcat.apache.org/whichversion.html
2.jstl标签库 c.tld 与c_rt.tld的区别?
如果web.xml使用配置的是使用servlet 2.5规范,那么就必须使用c_rt.tld标签,
如果想使用c.tld标签库,那么就必须将servlet版本改为2.3版本或更低的版本