一个使用<ww:action />获取数据并显示的问题。

在程序中为获得所有Teacher的list并显示在jsp页面中,打算通过<ww:action/>来实现取数据,运行起来可以正常显示数据,这个没有问题。

现在问题是当所在的jsp页面提交后,我配置了validators,validation没通过,将返回该jsp页面,这个时候<ww:action/>没有起作用,数据没有显示出来。

请问该如何处理,才能确保返回该jsp页面时,数据依然能够显示。

谢谢!

产生list列表的action:
[code]package net.ocas.action.util;

import java.util.ArrayList;
import java.util.List;

import net.ocas.service.CourseService;
import net.ocas.service.TeacherService;

import com.opensymphony.xwork.ActionSupport;

public class ListAction extends ActionSupport{

private List list=new ArrayList();

public String getAllCourses() throws Exception{
CourseService cs=CourseService.getInstance();
list=cs.findAll();
return SUCCESS;
}

public String getCoursesWithOutTeacher() throws Exception{
CourseService cs=CourseService.getInstance();
list=cs.findCoursesWithOutTeacher();
return SUCCESS;
}


public String getAllTeachers() throws Exception{
TeacherService ts=TeacherService.getInstance();
list=ts.findAll();
return SUCCESS;
}


public List getList() {
return list;
}

public void setList(List list) {
this.list = list;
}
}[/code]

xwork.xml的配置片断:
[code]
<package name="manage" extends="webwork-default"
namespace="/manage">

<action name="addCourse"
class="net.ocas.action.AddCourseAction">
<result name="success">/manage/add_course.jsp</result>
<result name="input">/manage/add_course.jsp</result>
<interceptor-ref name="params" />
<interceptor-ref name="validationWorkflowStack" />
</action>
</package>

<package name="util" extends="webwork-default" namespace="/util">

<action name="listFactory"
class="net.ocas.action.util.ListAction">
<result name="success">/login.jsp</result>
</action>


</package>[/code]


jsp页面的代码片断:
[code]
<ww:form action="addCourse" method="post">
<ww:textfield label="Course code" name="course.courseCode" size="30"/>
<ww:action namespace="/util" name="listFactory!getAllTeachers" id="teachers" executeResult="false"/>

<ww:select label="Teacher"
name="teacherId"
list="#teachers.list"
listKey="id"
listValue="%{firstName + ' ' + lastName}"
size="10" />[/code]
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="com.bean.Sg" %> <%@ page import="com.dao.SgDao" %> <%@ page import="java.util.*" %> <%@ page import="com.dao.imp.SgDaoImp" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <link type="text/css" rel="stylesheet" href="../css/ww.css"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <div id="center"> <div id="up"><h2>搜索</h2></div> <form action="doindex.jsp" method="post"> <h2 id="ziti">字段:</h2><select name="ziduan" title="选择字段"> <option value="sgzh" value="sgzh">宿管用户名</option> <option value="uname" value="id">ID</option> </select> <h2 id="ziti2">值:</h2><input type="text" id="zhi" name="zhi" > <button value="开始搜索" id="b1" >开始搜索</button> </form> <button value="添加宿管信息" id="b2">添加宿管信息</button> </div> <table> <tr> <td>ID</td> <td>用户名</td> <td>密码</td> <td>姓名</td> <td>性别</td> <td>联系电话</td> <td>操作</td> <td>操作</td> </tr> <% if(session.getAttribute("uname")==null){ response.sendRedirect("login.jsp"); } %> <% List<Sg> sa=new ArrayList<Sg>(); SgDao s=new SgDaoImp(); sa=s.getSgList(); for(Sg sta:sa) { %> <tr> <td><%=sta.getId() %></td> <td><%=sta.getUsername() %></td> <td><%=sta.getPassword() %></td> <td><%=sta.getName() %></td> <td><%=sta.getSex() %></td> <td><%=sta.getPhone() %></td> <td><button onclick="del()">删除</button></td> <td><button onclick="del()">修改</button></td> </tr> <% } %> </table> </body> </html>实现这个页面的查询功能和删除表格行功能
07-16
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值