当前位置: 代码迷 >> J2EE >> struts2 拦截器 request作用域有关问题
  详细解决方案

struts2 拦截器 request作用域有关问题

热度:320   发布时间:2016-04-22 02:52:34.0
struts2 拦截器 request作用域问题
通过某个链接,链接到initModulePermissionData.action内,代码如下,该方法主要的作业是初始化页面需要的修改数据:
Java code
public String initModulePermissionData(){        List<SALM> salms = salmService.findAllSALM();        this.setListSalm(salms);   //set get        List<DEPT> depts = deptService.findAllDEPT();        this.setDeptList(depts);   //set get          List<ModuleUsers> moduleusers =                   moduleUsersService.findModuleUsersByModuleId(this.getModuleVo().getId());        this.setModuleUsersList(moduleusers);   //set get           Module  temp  = moduleService.get(this.getModuleVo().getId());        this.setModule(temp);   //set get        return SUCCESS;  //返回sucess进入modify.jsp页面}

执行完initModulePermissionData方法后进入modify.jsp!在该页面中我有一个存储按钮,点击存储按钮之后表单提交到
saveModulePermissionData方法中,执行修改动作!
Java code
public String saveModulePermissionData(){        if(this.getModuleVo().getView() != null){            System.out.println(this.getModuleVo().getId());            System.out.println(this.getModuleVo().getView().length);            moduleUsersService.savaOrUpdate(this.getModuleVo().getId(), this.getModuleVo().getView());        }        List<SALM> salms = salmService.findAllSALM();        this.setListSalm(salms);        List<DEPT> depts = deptService.findAllDEPT();        this.setDeptList(depts);        List<ModuleUsers> moduleusers = moduleUsersService.findModuleUsersByModuleId(this.getModuleVo().getId());        this.setModuleUsersList(moduleusers);        Module  temp  = moduleService.get(this.getModuleVo().getId());        this.setModule(temp);        return SUCCESS;    }

执行完修改之后我又重新初始化initModulePermissionData方法体中的数据,后台数据有变化,但是修改之后页面的现实数据没有变化!
是不是request作用域的问题。
我都是通过配置get和set方法来取值的。
modify.jsp的取值代码:
Java code
List<SALM> salms  = (List<SALM>)request.getAttribute("listSalm");    Module  module  =  (Module)request.getAttribute("module");    List<DEPT> depts  = (List<DEPT>)request.getAttribute("deptList");    List<ModuleUsers> moduleusers  = (List<ModuleUsers>)request.getAttribute("moduleUsersList");




------解决方案--------------------
貌似与request没什么关系,是不是更新方法的底层的事务没有提交
  相关解决方案