创建出来的web项目jsp页面中从EL表达式中拿数据的时候发现出来一堆乱码,仔细查看后发现web.xml文件的版本为2.3默认是忽略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>
<!--中间写配置项-->
</web-app>
一下附上Oracle官方说明,可以查看问题描述以及解决办法,一下也附上两种解决办法,亲测可用。
方案一:
既然问题是出在了web。xml配置文件中默认是不解析EL表达式的,那么我们可以手动修改设置,也就是在每个jsp页面加上下面这一句话:
<%@page isELIgnored=”false” %>
意思就是在本页中不忽略EL表达式,就是要解析它,这样的话就可以了。
方案二:
这种问题解决思路是既然web.xml文件的版本不行,那就换个高版本的不就可以了么,所以博主试着替换成了2.4版本的测试可行,以下附上2.4版本的配置代码:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/j2ee"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd "
version="2.4">
<!--中间写配置项-->
</web-app>