el表达式不生效(原样输出问题不被解析)问题的解决办法
如果遇到el表达式不生效(原样输出问题不被解析)问题,比如${yanggb}被原样输出成字符串,通常的原因是servlet3.0默认关闭了el表达式的解析,因此jsp页面忽视了el标签,要加入不忽略el表达式的page指令才行。
<%@ page isELIgnored="false" %>
注:EL表达式是不需要引入包的,tomcat自带servlet的包。
拓展
1.如果JSP中无法自动提示EL表达式的解决方法,在maven的pom.xml中加入如下代码。
<dependency> <groupId>javax.servlet</groupId> <artifactId>jsp-api</artifactId> <version>2.0</version> <scope>provided</scope> </dependency>
2.如果JSP中EL表达式不起作用,原样输出,除了最上面的解决方案外,可以更改web.xml的web-app标签中的命名空间来解决。
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> </web-app>
另外还需要在web.xml中配置jsp-config标签。
<jsp-config> <jsp-property-group> <url-pattern>/jsp/* </url-pattern> <el-ignored>true</el-ignored> </jsp-property-group> </jsp-config>
"我等了很久很久,也没有等到你。"
你要去做一个大人,不要回头,不要难过。