解決在jsp頁面中使用jstl無法遍歷request域中list集合的問題


解決在jsp頁面中使用jstl無法遍歷request域中list集合的問題


1. 前言

​ 最近在寫一個很簡單的Javaweb項目,里面需要將request域中的list集合加載到jsp頁面,我使用el表達式和jstl來加載request域中的list集合,但是在執行jsp頁面的時候出現異常

According to TLD or attribute directive in tag file, attribute items does not accept any expressions

2. 原因

​ 在jsp頁面使用jstl的時候出現該異常,可能的原因是使用了jstl1.2版本,同時又沒有使用JSTL core庫的備用版本,簡單來說就是你的JSTL版本和web.xml版本不匹配造成的。

3.解決方法

第一種:使用jstl1.1,指令應該為<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core“ %>

第二種:使用jstl/core_rt備用庫,JSTL core庫的有兩種taglib偽指令, 其中RT庫即是依賴於JSP傳統的請求時屬性值, 而不是依賴於EL來實現(稱為EL庫.JSP2.0將支持EL),此時改寫指令為:<%@ taglib prefix="c"% uri=http://java.sun.com/jstl/core_rt %>

第三種:修改web.xml

<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4">
              
改為2.3版本的
 
<!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>

博客參考https://blog.csdn.net/lcore/article/details/22337493


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM