就是在list.jsp中 用 jstl 做一段跌代(list)! 后出现这样的错误! 不知道为什么??
//我测试过 后台代码没有问题!! list 有值 org.apache.jasper.JasperException: /list.jsp(71,6) According to TLD or attribute directive in tag file, attribute test does not accept any expressionslist.jsp 部分代码: <c:choose>
<c:when test="${empty list2}">
<tr>
<td colspan="9">
没有你要的数据
</td>
</tr>
</c:when>
<c:otherwise>
<c:forEach items="${list}" var="u">
<tr>
<td> </td>
<td>${u.card_id}</td>
<td>${u.name}</td>
<td>${u.sex]}</td>
<td>${u.mobile]}</td>
<td>${u.phone}</td>
<td>${u.email}</td>
<td>${u.address}</td>
<td><a href="">修改</a></td>
</tr>
</c:forEach>
</c:otherwise>
</c:choose>
//我测试过 后台代码没有问题!! list 有值 org.apache.jasper.JasperException: /list.jsp(71,6) According to TLD or attribute directive in tag file, attribute test does not accept any expressionslist.jsp 部分代码: <c:choose>
<c:when test="${empty list2}">
<tr>
<td colspan="9">
没有你要的数据
</td>
</tr>
</c:when>
<c:otherwise>
<c:forEach items="${list}" var="u">
<tr>
<td> </td>
<td>${u.card_id}</td>
<td>${u.name}</td>
<td>${u.sex]}</td>
<td>${u.mobile]}</td>
<td>${u.phone}</td>
<td>${u.email}</td>
<td>${u.address}</td>
<td><a href="">修改</a></td>
</tr>
</c:forEach>
</c:otherwise>
</c:choose>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
如果你用的是JSTL1.0,请改成:
<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c" %>
1 楼 我照你的改了是不抱错误 ! 但是
<c:forEach items="${list}" var="u">
<tr>
<td> </td>
<td>${u.card_id} </td>
<td>${u.name} </td>
<td>${u.sex]} </td>
<td>${u.mobile]} </td>
<td>${u.phone} </td>
<td>${u.email} </td>
<td>${u.address} </td>
<td> <a href="">修改 </a> </td>
</tr>
</c:forEach>
中的内容怎么不显示啊 !但是我的 list 中是有两条记录的啊! 因该显示两条 <tr></tr>才对啊!
把保存数据的源代码贴一下,然后发则消息给我。
半小时内在线,呵呵。
是不是有其它东西的名称也叫list,你换个属性名试试:
request.setAttribute("mylist", list);
页面上也改成
${mylist}
或者更精确一点:
${requestScope.mylist} 如果还不成,那就太奇怪了,呵呵. 我有事得下线了,如果还有问题,请把问题回复在帖子中.呵呵.
肯定是先执行了这个list方法,再回到那个页面的吗
不然怎么会有输出呢!!-----listAll------
----connDB-----
1 jie M 13073424986 8140996 [email protected] HengYang
2 sasa W 13073424985 8140991 [email protected] BeiJing
[cn.orc.jie.CardBean@10ab09f, cn.orc.jie.CardBean@d1c778]这是 我下面代码的输出:
public ActionForward list(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws Exception {
CardForm cardForm = (CardForm) form;
System.out.println("------list-----");
ArrayList myList = CardDAO.listAll();//写了一个DAO调用数据库中 t_card 表中的数据:
Iterator it = myList.iterator();
while(it.hasNext()) {
CardBean ub = (CardBean)it.next();
System.out.print(ub.getCard_id() + " ");
System.out.print(ub.getName() + " ");
System.out.print(ub.getSex() + " ");
System.out.print(ub.getMobile() + " ");
System.out.print(ub.getPhone() + " ");
System.out.print(ub.getEmail() + " ");
System.out.println(ub.getAddress() + " ");
}
System.out.println(myList);
request.setAttribute("myList", myList);
return mapping.findForward("success");
}我项目的流程 是先index.jsp
<a href="userCord.do?command=list">名片管理系统</a><br>
转到UserCordAction 的 list的方法, 在通过DCardDAO 的listAll()方法调用数据库中的 t_card 表中的数据: 把每一行保存在一个 CardBean 实例中, 在放到 一个 ArrayList myList 中 ,返回给ArrayList myList = CardDAO.listAll();在设置到request 中,
在通过return mapping.findForward("success"); 转到 list.jsp 页面!! 想做显示 就出现我上面说的 问题了
我晕……难道是你的配置<forward>的时候加上了redirect=true?那就变成重定向了,request中的数据会丢失的……