struts中跳转action之后的返回问题

问题描述

我的问题如下:list.jsp里面有个链接admin/add(添加)成功后,跳转到admin/list,这个action执行后得到之前的list.jsp,在这个页面里面的某条记录里面有个查看详情的链接 admin/view,得到view.jsp页面,view.jsp页面有个返回的js代码:history.back();但是点击这个返回链接之后,本想返回到之前的list.jsp,结果却出现“页面已过期”的错误信息。我的理解是,那个list.jsp是通过add这个action得到的,点击view查询后,在 history.back()返回,又返回到那个add action,浏览器为的保护数据机制起了作用,所以显示页面过期。我想通过返回转到之前的list页面,不知道怎么处理,有时候在一些add update等输入表单页面取消操作返回时也会这样。不知道我说的清楚不,反正就是这种情形,你们应该懂的。有什么方法可以解决这样的问题呢。真心感谢你们的解答!

解决方案

建议如admin/add(添加) 成功后 通过重定向回list,这样可以防止如重复提交问题,和你说的过期问题得到view.jsp页面,view.jsp页面有个返回的js代码:history.back();但是点击这个返回链接之后 此处也不建议back返回上一页面,直接写个a标签过去不行?
解决方案二:
返回连接直接调整list.action,重定向,这是必须的啊
解决方案三:
是的,不要用浏览器的历史跳转。不稳定也不安全。应使用服务器端跳转。如果那个页面的内容访问频繁就在服务器端缓存数据。
解决方案四:
不知道楼主有没有觉得自己把自己弄混了? 本来一个简单的跳转,非要通过浏览器的JS历史记录跳转,我们在做web开发的时候,尽量不依赖浏览器就不要依赖浏览器。那么具体说一下你的那个跳转业务,你的View的返回只可能是到List,那么为什么不知道一个Url指向List的Action呢?希望楼主好好理理思路。
解决方案五:
改成通过action跳转页面
解决方案六:
add方法添加成功后 返回list。jsp的时候struts配置成重定向 <forward ... redirect="true"/>
解决方案七:
应该这样设计:点击view查询 调用action 方法。跳转到admin/list,这个action执行后得到之前的list.jsp

时间: 2024-09-09 22:06:45

struts中跳转action之后的返回问题的相关文章

Struts中JSP到Action过程中数组的投射

Jsp <div>     <input type="hidden" name="stulst.name" value="xy"/>     <input type="hidden" name="stulst.name" value="xy1"/>     <input type="hidden" name="stu

Struts中不同的Action和ActionForm组合

在TSS.com上看到一篇好文,有关Struts使用中各种不同的Action和ActionForm组合的利弊.我先消化一下,整理好,供大家参考.原文标题:Struts action mappings: Divide Et Impera,作者:Michael Juravlev.在TSS上的URL:http://www.theserverside.com/articles/article.tss?l=StrutsActionMapping 说明:阅读本文需要一定的Struts基础.注:文中小写的ac

struts中跳转时json中的execudeProperties的问题

问题描述 我想请问下那个userDAO是和哪关联,还是那个就没用<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEstrutsSYSTEM"http://struts.apache.org/dtds/struts-2.0.dtd"PUBLIC"-//ApacheSoftwareFoundation//DTDStrutsConfiguration2.0//EN">-

javaee-ajax提交后台action后,怎么让后台action中跳转页面

问题描述 ajax提交后台action后,怎么让后台action中跳转页面 由于之前用jquery的submit事件提交表单时,ckeditor中的内容提交不了 $("#sendmail").submit(); 所以我换了ajax提交,a但是现在ajax提交有一个问题.我需要的是表单提交到action中, action中进过struts,跳转到对应的成功界面,但是由于ajax,我action中 的功能实现了,就 是不能进行跳转,界面一直显示发送中,想请问一下各位这是怎么回事. 我期望发

如何让Action不跳转,但又返回数据集?(SSH)

问题描述 我的一个网页要显示好几个不同的数据表中的数据,我知道在JSP页面用<logic:present>或者<s:action>都可以打开页面就调用action,但是action要配置跳转页面.所以不明白如何在同一个JSP页面里面显示几个action调用显示的数据.或者直接告诉怎么实现一个jsp页面同时显示几个数据表的数据(SSH).我要的是打开JSP页面就显示数据,就是普通网站那种,望高手们指点迷津... 解决方案 解决方案二:返回none就不会跳转,不过,不跳转你的页面不可以

Struts中的Action类的工作机制

Struts中的Action类的工作机制  所有的Action类都是org.apache.struts.action.Action的子类.Action子类应该覆写父类的execute()方法.当ActionForm Bean被创建,并且表单验证顺利通过后,Struts框架就会调用Action类的execute()方法.execute()方法的定义如下:    public ActionForward execute(ActionMapping mapping                   

如何使用Spring来管理Struts中的Action

当指定struts.objectFactory为spring时,struts2框架就会把bean转发给spring来创建,装配,注入.但是bean创建完成之后,还是由struts容器来管理其生命周期.配置方式: (1)struts.xml中: xml 代码: < constant name="struts.objectFactory" value="spring" /> (2)struts.properties中: java 代码: struts.obj

struts跳转action 报错

问题描述 struts跳转action 报错 There is no Action mapped for action name sms_type_qunfa. - [unknown location]报这个错误 可是我在struts里已经配置了呀求大神指导 解决方案 我真的要疯了 T^T 一个多小时了 解决方案二: 你给的信息太好了,你做的是ssh的项目,还是单纯的struts项目? 提示信息给的也很明显 ,就是找不到sms...这个action 解决方案三: 肯定是访问地址输错了,直接检测一

path-jsp中action 和Struts 中的action虚拟路径问题

问题描述 jsp中action 和Struts 中的action虚拟路径问题 <html:form action=""/clsCompCaseDealAction"" method=""post"" enctype=""multipart/form-data""> 和struts中的 <action attribute=""clsCompCaseDe