struts2.1.8问题,jsp拿不到action里面定义的list

第一次发帖,希望大家能看懂,[color=red][b]就是JSP拿不到action里的属性[/b][/color],用的是struts2.1.8,在谷歌百度搜了很多页没能找到答案,各层代码如下,
web.xml:

struts2

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter



struts2
/*

DAO层:
public List listAll(String clazz) {
System.out.println("dao已执行");
return getHibernateTemplate().find("from "+clazz);
}

Service层:
public List browse() {
List list = dao.listAll("Teacher");
System.out.println("service层已执行,list记录数为 "+list.size());//输出list记录数
return list;
}

Action层(TeacherAction):
private List teacherList;
public String browse(){
teacherList = service.browse();
System.out.println("action层已执行,记录数为 "+teacherList.size());
return SUCCESS;
}

表现层(browseTeacher.jsp):
<%@ page contentType="text/html; charset=gbk"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%@include file="../common/admin_head.jsp"%>
<%@ taglib uri="http://displaytag.sf.net" prefix="display" %>




/s:iterator


接着用displaytag输出记录。太长省略
/display:table

struts.xml: // 这里我已在spring配置文件中对应TeacherAction为小写的teacherAction

/admin/{1}Teacher.jsp


[color=red][size=large]运行结果,各层能输出记录数,表明list已装上记录,然而JSP显示找不到记录,请问问题出在哪里?[/size][/color]

输出请看图片附件:
希望各位踊跃发言,我被这这问题卡了好久,万分感谢!

6个回答

private List teacherList需要get方法,如过要在页面去的话,get方法么,你调用函数就给它赋值了可以不要。



/s:iterator
:twisted: 你这个struts2标签用的有问题,肯定取不到的,应该这样:



/s:iterator

或者: :wink:




/s:iterator

private List teacherList; 有没有对应的get,set方法?

放在request作用域里
在页面取一下就行了么

使用标记,需设置devMode=true查看当前页面是否获取到teacherList对象

加个'#'号试试
[code="java"]

[/code]

表现层的迭代明显错了。
这样取。




/s:iterator

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问