EL式はサーブレット2にある.5では使用できません



長い間デバッグしていたが、el式はjspでは使えず、自分もおかしいと思った.新しい工事を再開した問題は依然として存在している.元はservlet 2.5変なことをした.依存関係:

  
  
  
  
  1. <dependency> 
  2.             <groupId>com.alibaba.external</groupId> 
  3.             <artifactId>java.servlet</artifactId> 
  4.             <version>2.5</version> 
  5.         </dependency> 

解決策:ジャンプ先ページに<%@page isELIgnored="false"%>を追加
JSPでEL式を正常に表示することができない例として、${true and true}EL式を入力し、ページに表示する結果はtrueではなく${true and true}がサーブレット2のためである.3以下のバージョンではEL式は定義されておらず、デフォルトではEL式は無効になっています(JSP 1.2デフォルトでもEL式は無効になっています).解決方法:各JSPページにEL式<%@page isELIgnored="false"%>サーブレット2を無効にする.4 EL式が定義されています(JSP 2.0ではデフォルトでEL式が有効になっています).自分が使っているバージョンが分からなければそれはwebに行けます.xmlではを見て、2.3版と2.4版2.3版2.4版http://java.sun.com/xml/ns/j2ee"xmlns:http://www.w3.org/2001/XMLSchema-instance%22xsi:schemaLocation=%22http://java.sun.com/xml/ns/j2eehttp://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLxsi:schemaLhttp://java.sun.com/xml/ns/j2ee">http://java.sun.com/xml/ns/j2eehttp://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"version="2.4">
【注意】
(1)値を取るときは必ず<%=request.getParameter("usercode")%>、requestではありません.getAttribute("usercode")
(2)ページの提出内容を取得:username:${param.username}
テスト後、servlet 2.3では${username}だけを使うことはできますが、2.5ではできません.Actionに以下のjavaコードを追加する、${protocal}でコンテンツを取得でき、requestのような隠しコンテンツを渡すことができる.setAttribute("protocal").

  
  
  
  
  1. private String protocal = "hello, the protocal."
  2. public String getProtocal() { 
  3.     return protocal; 

  
  
  
  
  1. username:<%=request.getParameter("username") %><br> 
  2.     username: ${username}<br> 
  3.     protocal: ${protocal } 

(3)EL式(詳細)
http://blog.csdn.net/qwerasdf123/article/details/4189889