关于struts2 redirectAction的问题

问题描述

我在页面上提交表单,经过saveUser action后跳转到findUsers action,为设么findUsers action中user还是saveUser action中的值(页面模型)?????????<form id="userForm" action="saveUser.action" method="post"><input class="text-input small-input" type="text" id="mc" name="user.userid" value="${user.userid}"/><input class="text-input small-input" type="text" id="mc" name="user.username" value="${user.username}"/>////////////////////////////////////////////////////////<action name="findUsers" class="userAction" method="findUsers"><result name="success">/system/user.jsp</result></action><action name="saveUser" class="userAction" method="saveUser"><result name="success" type="redirectAction"> findUsers</result><result name="failed" type="chain">findUsers</result></action> /////////////////////////////////////////////////public class UserAction extends BaseAction{private String id;private EasyUser[color=red] user;//页面模型private List<EasyUser> list;//返回所有用户private List<EasyJuese> jueseList;//所有角色private List<EasyBumen> bumenList; //所有部门private String role; //页面查询条件private String department; //页面查询条件public String getRole() {return role;}public void setRole(String role) {this.role = role;}public String getDepartment() {return department;}public void setDepartment(String department) {this.department = department;}public String getId() {return id;}public void setId(String id) {this.id = id;}public EasyUser getUser() {return user;}public void setUser(EasyUser user) {this.user = user;}public List<EasyUser> getList() {return list;}public void setList(List<EasyUser> list) {this.list = list;}public List<EasyJuese> getJueseList() {return jueseList;}public void setJueseList(List<EasyJuese> jueseList) {this.jueseList = jueseList;}public List<EasyBumen> getBumenList() {return bumenList;}public void setBumenList(List<EasyBumen> bumenList) {this.bumenList = bumenList;} /** * 显示用户列表 * 方法名:findUsers * 描述: * @param @return * @return String */public String findUsers(){user=null;role="-1";department="-1";jueseList=getEasyJueseService().findAll();bumenList=getEasyBumenService().findAll();list=getEasyUserService().findAll();return SUCCESS;} public String deleteUser()throws BzException{try {id=new String(id.getBytes("iso-8859-1"),"utf-8");} catch (Exception e) {throw new BzException("id异常");}try {if(!getEasyUserService().delete(getEasyUserService().findByUserId(id)))throw new BzException("删除用户不存在") ;} catch (Exception e) { throw new BzException("删除异常");}return SUCCESS;}/** * * 方法名:saveUser * 描述:保存用户 * @param @return * @return String * @throws BzException */public String saveUser() throws BzException{int rid=Integer.parseInt(role);int did=Integer.parseInt(department);try {EasyJuese role=getEasyJueseService().findJueseById(rid);EasyBumen dept=getEasyBumenService().findBuMenById(did);user.setEasyJuese(role);user.setEasyBumen(dept);getEasyUserService().save(user);} catch (Exception e) {throw new BzException("添加用户出错,系统中已存在用户"+user.getUserid());}return SUCCESS;}

解决方案

问下你的Action是"单例"的还是"原型"的,如果是"单例"的话,你在saveUser的时候user是有值的,转到findUsers的时候,值还是saveUser时候的值,
解决方案二:
事务提交了吗

时间: 2024-09-18 00:34:07

关于struts2 redirectAction的问题的相关文章

Struts2 redirectAction转向时默认加pass的问题

项目中要转发action,我就用 Xml代码 <result name="success" type="redirectAction">my.action</result> 但是今天再用的时候发现一个莫名其名的问题,程序转向了一个不存在的url ,如下: 原来应该是这样的:http://localhost:8080/focus/account/my.action 其中focus,是项目名,就是上下文路径,account是命名空间,my.act

struts2 result type= redirect redirectAction chain dispatcher等类型

struts.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC     "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"     "http://struts.apache.org/dtds/struts-2.0.dtd"> <!--

struts2参数传递问题。在页面链接中使用?page=1可以传递成功,但是在配置文件中不行

问题描述 struts2参数传递问题.在页面链接中使用?page=1可以传递成功,但是在配置文件中不行 在页面链接中传递参数可以成功调用action的setPage方法:在struts的配置文件中使用redirectAction:employee_list.action?page=1page参数传递不成功,测试是没有调用action中的setPage方法.但是可以重定向到指定的action,就是参数传递不成功,为什么? 解决方案 页面链接中的代码:可以成功 struts配置文件中的代码/WEB-

Struts2框架学习之三:result返回结果

前言 Struts 2中的Result是作为返回结果的,时当一个action处理完之后返回字符串的结果码.框架可以根据这个返回的字符串,映射到指定的页面.result元素可以分为两部分:一是结果映射,一部分是返回结果类型. 结果映射 result有两个属性可以配置:name属性和type属性.其中的name属性主要用来指定资源的逻辑名称,实际名称在标签内部指定.type属性就是result的返回类型.要注意的是,这两个属性都不是必须的,当我们没有配置这两个属性的时候,实际上框架为我们指定了默认值

struts2 访问不存在的action时,自动跳转

struts 中访问不存在的action时,默认的会显示如下页面:     这显然不友好.能不能跳转到统一的action进行处理呢? struts 可以做到. struts.xml配置文件如下: Xml代码   <?xml version="1.0" encoding="UTF-8" ?>   <!DOCTYPE struts PUBLIC       "-//Apache Software Foundation//DTD Struts 

javaweb-哪位大大神知道struts2执行流程?

问题描述 哪位大大神知道struts2执行流程? 哪位大神知道struts2拦截器的执行流程啊!万分感谢啊!!!哪位大神知道struts2拦截器的执行流程啊!万分感谢啊!!! 解决方案 程序在启动时,web项目会加载web.xml,配置的StrutspropareAndExecuteFilter就会被加载,运行init()方法,找到struts.xml配置文件,从而加载所有的struts的相关的配置文件. 当一个请求访问时,实际上走了一个这样的流程: 浏览器发出请求,进入tomcat服务器,to

struts2: 玩转 rest-plugin

近期使用struts2的rest-plugin,参考官方示例struts2-rest-showcase,做了一个restful service小项目,但官网提供的这个示例过于简单,埋下了巨坑无数,下面是一些遇到的问题及解决办法: 注:下面这些问题,很多是相互关联的,要解决一个,得同时解决另一个.  一.与config-browser-plugin.convension-plugin.非rest Action 共存的问题 rest-plugin的气场实在太强,一旦使用,config-browser

struts2工作流程及各种文件详解

转自:http://blog.csdn.net/zjtimef/article/details/12027767 当用户发送一个请求后,web.xml中配置的FilterDispatche(Struts 2核心控制器)就会过滤该请求,FilterDispatcher根据配置,将请求转发给Action. 以下是详解过程: 1. 当Web容器收到 请求(HttpServletRequest),例如http://localhost:8080/Struts 2.0/hello.jsp就是一个请求. 2.

spring整合struts2怎样配置有多个result的action?

问题描述 spring整合struts2怎样配置有多个result的action? struts.xml中的配置 <action name="User_*" class="userAction" method="{1}"> <result name="list">/list.jsp</result> <result name="save">/save.jsp&