action方法中是这么写的
List<Course> courses = iCourseService.findList("teacherId",1);
System.out.println(courses);
ActionContext.getContext().put("courses",courses);
查寻是没有问题的,因为输出语句可以得到后台的值,下面是
System.out.println(courses);
输出的内容,类型没有错;
[Course{id=1, title='java', majorId=1, stste=0, courseType=1, teacherId=1, subject=1, duration=20, expect=15, createTime='2017-10-31 08:38:56.0', mode='视频授课'}, Course{id=3, title='美工', majorId=1, stste=0, courseType=1, teacherId=1, subject=1, duration=25, expect=20, createTime='2017-11-01 15:50:13.0', mode='视频授课'}]
jsp中是这么调用的
<select>
<s:iterator value="#courses">
<option value="<s:property value="id"/>"><s:property value="title"/></option>
<%--<s:property value="title"/>--%>
</s:iterator>
</select>
可是并没有查询出什么,数据库是有内容的,不然输出语句就输出null了,而且类型正确,后来又在jsp
中添加了<s:debug />可是Ctrl+f查询的时候查不到courses这个对象
对象是没有问题的,方法也没有问题,跳转页面都正常,难道是其他地方出了什么错误么?
而且以前用这个方法的时候也没有问题,这是怎么回事
请大神指教
Context只是上下文的意思呀,你后台传给前台的数据应该放到session中吧,然后前台代码就可以取到了~
以前这样写是可以的,不知道这次为什么不行,我换下session试试吧
发现问题的所在了,我返回的页面不对,之后又重定向了一次,所以没获取到值,希望以后你也可以注意,谢谢回答,我的问题解决了
@键盘碎了 嗯嗯,解决了就好。大学时我还是全栈开发,工作后就是纯后台开发!只是凭印象觉得信息应该放在后台,看了下资料,放在上下文里好像也可以