jstl标签的用法

mrchenxjy 2009-12-30 09:23:36
首先,在我的oracle数据库中有两表 users、dept,这两个表的部分javabean是这样写的
user表的部分javabean代码

private Long id;
private Dept dept;
private String username;
private String password;
private Long gender;
private Long role;
private String cardid;
private String actualName;
private String addr;
private String email;
private String comaddr;
private String position;
private String decraption;
private String spare2;
private String spare3;
private Set examUsers = new HashSet(0);

dept表部分的javabean代码

private Long id;
private Dept dept;
private String dname;
private Long hasParent;
private Set userses = new HashSet(0);
private Set depts = new HashSet(0);



在jsp页面中,我想通过jstl标签来<c:forEach>来迭代显示数据。其中,dept表的内容,我是通过拿到user表的中的dept对象,进而拿到dept表的各个字段的...比如:

<td width="23%" style="text-align:left;">
<select name="dname">
<c:forEach items="${requestScope.usersEdit.dept}" var="list">
<option>${list.dname}</option>
</c:forEach>
</select>
</td>

但它老是报错
org.apache.jasper.JasperException: An exception occurred processing JSP page /admin/userEdit.jsp at line 126
我查过126行,就是<c:forEach items="${requestScope.usersEdit.dept}" var="list">

所以,我想问的是,<c:forEach>是不是不可以用在<option>标签当中,要是我直接写成这样
${requestScopt.usersEdit.dept.dname}就可以显示出一条数据,但并不是我想要的迭代显示!!!!

如果可以用<c:forEach>标签的话,怎么才能让它用在<select name="gender"><option value="1"></option></select>当中!!!!!!!
...全文
1904 17 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
Adrn1n 2010-01-01
  • 打赏
  • 举报
回复
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
地铁18号线 2010-01-01
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 humor200 的回复:]
没引JSTL标签支持库吧
[/Quote]
就是这个问题,我犯过好多次了
爱-自由 2009-12-31
  • 打赏
  • 举报
回复
<select name="dname">
<c:forEach items="集合" var="变量名">
<option>${变量名.属性} </option>
</c:forEach>
</select>


howsun_zh 2009-12-31
  • 打赏
  • 举报
回复
request作用域中usersEdit对象是什么类型?可能是个单一的user对象,而User.java:
private Dept dept;//这不是一个集合

把存入request作用域那附近的代码帖出来看看。
Dazzlingwinter 2009-12-31
  • 打赏
  • 举报
回复
你后台想request或者session里set的什么东东啊,贴出来看看
zzg890926 2009-12-31
  • 打赏
  • 举报
回复
直接把得到的list对象放在session中,在页面中得到,在循环!
gxw19820801 2009-12-31
  • 打赏
  • 举报
回复
<select name="dname">
<c:forEach items="集合" var="变量名">
<option>${变量名.属性} </option>
</c:forEach>
</select>
skylau 2009-12-31
  • 打赏
  • 举报
回复
其中:list是从user集合
skylau 2009-12-31
  • 打赏
  • 举报
回复
<td width="23%" style="text-align:left;">
<select name="dname">
<c:forEach items="user" var="list">
<option>${user.dept.dname}</option>
</c:forEach>
</select>
</td>
Fallen934985 2009-12-31
  • 打赏
  • 举报
回复
items="${requestScope.usersEdit.dept}"
这里面只能放集合
jarvis_java 2009-12-31
  • 打赏
  • 举报
回复
items是集合,只有集合才能迭代使用foreach标签
cat_cook 2009-12-31
  • 打赏
  • 举报
回复
private Long id;
private Dept dept;
private String dname;
==>>dept bean这样定义有什么意义?c:foreach语法就那样,你先处理好自己的逻辑问题再解决显示的问题吧!
strive_bo 2009-12-31
  • 打赏
  • 举报
回复
<option>${list.dname}</option>
从哪里过来的 把list的代码贴出来
有两种办法 第一个是在后台操作 第二个是 list.dname[name]
humor200 2009-12-31
  • 打赏
  • 举报
回复
没引JSTL标签支持库吧
Fallen934985 2009-12-30
  • 打赏
  • 举报
回复
要集合和对象才能这么搞。。。。
xinlan1022 2009-12-30
  • 打赏
  • 举报
回复
${requestScopt.usersEdit.dept.dname}就可以显示出一条数据,
说明requestScopt.usersEdit.dept这个不是一个集合对象,你怎么迭代啊?
mrchenxjy 2009-12-30
  • 打赏
  • 举报
回复
没人看??

67,550

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧