-
<c:forEach>不能使用10
<%@ page contentType="text/html;charset=GBK" language="java"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page isELIgnored="false" %>
<html>
<head>
<title>当前已经有帐号信息</title>
</head>
<body>
<form>
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<tr align="center">
<td>
<%request.setAttribute("guess","Java"); %>
<c:if test="${requestScope.guess!='Java'}">(正常运行)
You guessed it!
</c:if>
<c:if test="${pageContext.request.method=='GET'}">(正常运行)
<c:out value="${pageContext.request.method}"/>
</c:if>
</td>
</tr>
<tr>
<td>
<c:forEach var="idx" begin="1" end="5" step="1">(出错)
<c:out value="${idx}"/>
</c:forEach>
</td>
</tr>
</table>
</form>
</body>
</html>
出错信息(console):2009-1-6 9:31:43 org.apache.jasper.compiler.TagLibraryInfoImpl createAttribute
警告: Unknown element (deferred-value) in attribute
出错信息(.jsp):
exception
javax.servlet.ServletException: javax/el/ValueExpression
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:244)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
java.lang.NoClassDefFoundError: javax/el/ValueExpression
java.lang.Class.getDeclaredMethods0(Native Method)
java.lang.Class.privateGetDeclaredMethods(Unknown Source)
java.lang.Class.getDeclaredMethods(Unknown Source)
java.beans.Introspector$1.run(Unknown Source)
java.security.AccessController.doPrivileged(Native Method)
java.beans.Introspector.getPublicDeclaredMethods(Unknown Source)
java.beans.Introspector.getTargetMethodInfo(Unknown Source)
java.beans.Introspector.getBeanInfo(Unknown Source)
java.beans.Introspector.getBeanInfo(Unknown Source)
java.beans.Introspector.getBeanInfo(Unknown Source)
java.beans.Introspector.<init>(Unknown Source)
java.beans.Introspector.getBeanInfo(Unknown Source)...
\tomcat5.0.28\common\lib:
commons-el.jar;
jstl.jar;
standard.jar;
都有2009年1月06日 09:36
7个答案 按时间排序 按投票排序
-
采纳的答案
我的環境:
1.WLS8
2.JSTL1.0(Standard1.0.jar; jstl1.0.jar)
可以正常運行的.
另外,你的 <%@ page isELIgnored="false" %>
應該是在Servlet2.4以後才需要的吧.
我看你的Tomcat是5.0.28,應該換是Servlet2.3的環境; 去掉試試看.2009年1月06日 10:39
-
这样子试试看:
<c:forEach var="idx" begin="${1}" end="${5}" step="${1}">
<c:out value="${idx}"/>
</c:forEach>2009年1月06日 13:10
-
上面已经说的很详细了,就是少了一个items。
items:用来指定从哪里来遍历,
var:只是遍历时候的变量而已,来替代items中的遍历值2009年1月06日 11:42
-
你的c:forEach少了个items,即使该值集合的对象。
如:
Action:
List<User> users = new ArrayList<User>(); this.setUsers(userService.list());
JSP:<c:forEach var="user" begin="1" end="5" step="1" items="${users}"> <c:out value="${user.login}"/> </c:forEach>
2009年1月06日 10:52
-
你的items属性没了, 那对哪个list循环呢,改成这样试试<c:forEach items="${allitem}" var="idx"> ,加上items属性
2009年1月06日 10:40
-
问题点在这于这个:
java.lang.NoClassDefFoundError: javax/el/ValueExpression
javax.el.ValueExpression
要么呢。你就看看应用和你的tomcat下有没有重复的jar。。。主要应该是那个*el*.jar2009年1月06日 10:33
相关推荐
<c:forEach> 为循环控制,它可以将集合(Collection)中的成员循序浏览一遍。运作方式为当条件符合时,就会持续重复执行<c:forEach>的本体内容。 语法 语法1:迭代一集合对象之所有成员 <c:forEach [var="varName...
<% Map<String, String> map = new HashMap<>(); map.put("key1", "value1"); map.put("key2", "value2"); request.setAttribute("myMap", map); %> ... <!-- 遍历键 --> <c:forEach items="${myMap.keySet()}" var=...
1. `<c:forEach>`:用于遍历集合、数组或迭代对象,实现循环操作。 2. `<c:forTokens>`:对字符串进行分割,然后对每个分割出来的元素进行循环处理。 **使用JSTL的好处**: - 提高代码的可读性:通过使用XML样式的...
相较于传统的JSP Scriptlets,使用 `<c:forEach>` 能够使得代码更加简洁、易于维护。 #### 一、标签属性详解 ##### 1. `var` `var` 属性用于定义每次循环中使用的变量名,该变量将被设置为当前迭代中的元素。 **...
总的来说,`<c:if>`和`<c:forEach>`是JSTL库中的两个重要标签,它们在前端EL表达式的应用中起着关键作用,帮助开发者在不编写过多Java代码的情况下完成条件判断和循环操作,提升了开发效率和代码可读性。理解和熟练...
在JSP页面中,使用`c:forEach`标签遍历`map`: ```jsp <c:forEach items="${map}" var="entry"> <option value="${entry.key}">${entry.value}</option> </c:forEach> ``` 这里,`${map}`代表从前端传过来的`Map`...
C标签库提供了一些类似于Java编程中的控制结构,例如`<c:if>`, `<c:forEach>`, `<c:choose>`, `<c:set>`等,这些标签能够帮助开发者更方便地在JSP页面上进行逻辑处理,而无需过多地编写脚本let或Java表达式。...
- **迭代标签**:`<c:forEach>`、`<c:forTokens>`,实现循环遍历。 - **URL操作标签**:`<c:import>`、`<c:param>`、`<c:url>`、`<c:redirect>`,用于处理URL相关的操作。 **4. 使用JSTL的步骤** 1. 将JSTL的`....
<c:forEach var="item" items="${list}" varStatus="status"> <!-- 循环体内容 --> </c:forEach> ``` - **示例**: ```jsp <c:forEach var="name" items="${list}" varStatus="i"> ${i.index} // 从0开始的...
这是一个jsp+javaBean+servlet分页 主要功能 是通过 jstl标签中的 <c:forEach 中的开始 begin和末尾end、list结果集的items属性 操作整个分页。大家有兴趣看看
stl的配置方法:<br>1、将jstl.jar和standard.jar拷贝到web-inf/lib下即可(如只使用EL表达式,无需引用这两个包)<br><br>2、在jsp页面头部引入taglib方法如下:<br> <%@ taglib prefix="c" uri=...
如:`<c:forEach items="${collection}" var="item">...<c:forEach>`,`items`指定要遍历的对象,`var`定义当前元素的变量名。 4.2. `<c:forTokens>`:用于按分隔符拆分字符串并遍历。例如,将字符串按空格分割并...
本文件主要涉及了JSTL中的一些核心标签,如`<c:if>`、`<c:choose>`、`<c:when>`、`<c:otherwise>`和`<c:forEach>`等,并展示了它们在实际应用中的用法。 1. **条件判断标签**: - `<c:if>`:用于进行条件判断,`...
<c:forEach items="${yourList}" var="item"> ${item} </c:forEach> ``` - **`<c:remove>`**: 用于删除一个变量。例如: ```jsp <c:remove var="name"/> ``` 3. **JSTL与EL(Expression Language)的配合**...
首先,`C标签`是指Tomcat的JSTL(JavaServer Pages Standard Tag Library)的一部分,它提供了类似于Java控制结构的标签,如`<c:if>`, `<c:forEach>`, `<c:choose>`等。这些标签使得开发者可以使用更加简洁的XML语法...
- `<c:choose>`、`<c:when>`和`<c:otherwise>`:它们一起使用,可以实现类似于if-else语句的功能。`<c:choose>`包含多个`<c:when>`标签,每个`<c:when>`测试一个条件,如果满足则执行相应代码;如果没有匹配的条件...
`<c:forTokens>`标签类似于`<c:forEach>`,但它是专门用于遍历由分隔符分隔的字符串中的令牌。 **示例:** ```xml <c:forTokens items="a,a,a,a,a" delims="," var="x" begin="0" end="10" step="2" varStatus=...
除了这些,JSTL还提供了其他标签,如`<c:set>`用于设置变量,`<c:if>`和`<c:choose>`进行条件判断,`<c:forEach>`进行循环遍历,等等。使用JSTL可以使JSP代码更加整洁,更易于理解和维护,是现代JSP开发中的重要工具...
<c:forEach items="${requestScope.students}" var="student" varStatus="num"> <tr> <td>${num.count}</td> <td>${student.sname}</td> <td><c:out value="${student.spass}" default=...
例如,使用`<c:forEach>`遍历一个集合: ```jsp <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <html> <head> <title>...