JSP页面不支持EL表达式的解决方法

JSP页面不支持EL表达式的解决方法_第1张图片

JSP页面不支持EL表达式的解决方法

JSP页面不支持EL表达式的问题就出在新建项目时web.xml的声明上。

web.xml声明部分一般分为如下版本的xsd:

  • web-app_2_2.xsd

  • web-app_2_3.xsd

  • web-app_2_4.xsd

  • web-app_2_5.xsd

web-app_2_2.xsd:

  
  

web-app_2_3.xsd:

  
  

web-app_2_4.xsd:

  
  

web-app_2_5.xsd:

  
  

在确定web.xml里的xsd版本之后一定要在JSP页面的头部声明(<%@page %>)部分加一行,如下:

<%@ page isELIgnored="false" %> 

设为false才能解析EL表达式。

经过各版本的test之后,注意!!其中Servlets 2.4(JSP 2.0出来之后的第一个版本),这个版本的isELIgnored默认设置为false。所以使用web.xml里用web-app_2_4.xsd声明的时候在JSP页面不用特意声明。

下面是官方Documention中isELIgnored Attribute的详解:

JSP页面不支持EL表达式的解决方法_第2张图片

文章转自:http://www.iteye.com/topic/155354

经过测试,以上修改web.xml头为2.4的方式在Eclipse中用tomcat插件运行并不生效,而打包成war包部署到tomcat中是可行的,而在每个页面上增加page属性开启el表达式支持对于两种部署都可行。

下面这种方式是直接web.xml中增加对每个页面开启el表达式,配置如下(同样,在Eclipse的tomcat插件中是不可行的,部署到Tomcat中是可行的):

 

  
    
    *.jsp  
    false  
    
  

 

详细配置:

 

      
          
            指定JSP文件的配置属性  
            jspConfiguration  
            *.jsp  
            false  
            utf-8  
            false  
              
              
          
          
            指定htm文件的配置属性  
            jspConfiguration  
            *.htm  
            false  
            utf-8  
            false  
              
              
          
          
            指定html文件的配置属性  
            jspConfiguration  
            *.html  
            false  
            utf-8  
            false  
              
              
          
     

 

属性说明:

:设定的说明 :设定名称 :设定值所影响的范围,如:/CH2或/*.jsp:若为true,表示不支持EL语法 :若为true,表示不支持<% scripting %>语法 :设定JSP网页的编码 :设置JSP网页的抬头,扩展名为.jspf:设置JSP网页的结尾,扩展名为.jspf

 

 

 

你可能感兴趣的:(JSP页面不支持EL表达式的解决方法)