分享java帶來的快樂

          我喜歡java新東西

          主題:JSP頁面EL表達式無效的問題

          以前用WSAD wizard做的,都可以在JSP頁面中解析到EL表達式,當(dāng)然前提是JSP2.0的情況下。
          今天遇到了一個莫名其妙的問題。剛下載Eclipse3.3+MyEclipse6.0體驗的過程中,遇上了解析不到EL表達式的問題。經(jīng)過好幾個小時的琢磨終于發(fā)現(xiàn)了,給大家share一下:
          問題就出在建Web Project的時候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

          更詳細(xì)的列出各版本web.xml聲明部分吧,如下:
          web-app_2_2.xsd
          Java代碼 復(fù)制代碼
          1. <?xml version="1.0" encoding="UTF-8"?>   
          2. <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" "http://java.sun.com/dtd/web-app_2_2.dtd">  

          web-app_2_3.xsd
          Java代碼 復(fù)制代碼
          1. <?xml version="1.0" encoding="UTF-8"?>   
          2. <!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_2_4.xsd
          Java代碼 復(fù)制代碼
          1. <?xml version="1.0" encoding="UTF-8"?>   
          2. <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee   http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">  

          web-app_2_5.xsd
          Java代碼 復(fù)制代碼
          1. <?xml version="1.0" encoding="UTF-8"?>   
          2. <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  


          確定web.xml里的xsd版本之后一定要在JSP的聲明(<%@page %>)部分加一行,如下:
          <%@ page isELIgnored="false" %>
          這樣設(shè)為false才能解析EL表達式。
          經(jīng)過各版本的test之后....
          注意!! 其中servlets 2.4(我沒記錯的話JSP 2.0出來之后的第一個版本),這個版本的isELIgnored默認(rèn)設(shè)置為false。所以使用web.xml里用web-app_2_4.xsd聲明的時候在JSP頁面不用特意聲明。

          下面是官方Documention中isELIgnored Attribute的詳解:
          The isELIgnored Attribute
          • Format
          – <%@ page isELIgnored="false" %>
          – <%@ page isELIgnored="true" %>
          Purpose
          – To control whether the JSP 2.0 Expression Language
          (EL) is ignored (true) or evaluated normally (false).
          • Notes
          – If your web.xml specifies servlets 2.3 (corresponding to
          JSP 1.2) or earlier, the default is true
          • But it is still legal to change the default—you are permitted
          to use this attribute in a JSP-2.0-compliant server
          regardless of the web.xml version.
          – If your web.xml specifies servlets 2.4 (corresponding to
          JSP 2.0) or earlier, the default is false

          posted on 2008-12-27 23:22 強強 閱讀(218) 評論(0)  編輯  收藏 所屬分類: web技巧

          主站蜘蛛池模板: 潞西市| 行唐县| 阳原县| 罗山县| 九寨沟县| 五常市| 榆树市| 连南| 滁州市| 偏关县| 息烽县| 眉山市| 钦州市| 灌云县| 汉中市| 商河县| 焦作市| 黔西县| 鲁山县| 天水市| 鄢陵县| 霍山县| 隆林| 临湘市| 上虞市| 商水县| 遵化市| 华坪县| 民和| 肥东县| 罗甸县| 响水县| 揭阳市| 大新县| 靖安县| 贺兰县| 榆社县| 平利县| 当雄县| 莎车县| 彰武县|