【问题标题】:Reload the page on hitting back button在点击返回按钮时重新加载页面
【发布时间】:2012-07-25 02:19:40
【问题描述】:

我正在为我的项目使用 Struts2。 从事简单的注册项目。当用户 Login 时,他被定向到他的个人资料,但点击浏览器的后退按钮登录页面再次出现。 XML:

<action name="home" class="bharat.Home">
            <result name="success">/jsp/home.jsp</result>
             <result name="student">/jsp/Welcome.jsp</result>
</action>
<action name="Login" class="bharat.LoginAction">
            <result name="input">/index.jsp</result>
            <result name="success">/jsp/Welcome.jsp</result>
</action>

Home.java:

public String execute() {
           if((String)ActionContext.getContext().getSession().get("studentName")!=null)
        {
            return "student";
        }
        if((String) ActionContext.getContext().getSession().get("instructorName")!=null)
        {
            return "instructor";
        }
        session = ActionContext.getContext().getSession();
        session.put("roleName","notAdmin");
        return SUCCESS;
    }

Home.jsp

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<meta name="cache-control" content="no-cache" />
<meta name="expires" content="0" />
<meta name="pragma" content="no-cache" />
    <sx:head/>

我希望当用户在登录后点击返回按钮时,他必须被重定向回同一页面。谁能帮帮我..

【问题讨论】:

    标签: html xml session struts2


    【解决方案1】:

    我了解当前流程是这样的:

    用户连接到 URL -> 在登录页面提供登录 -> 首先加载 页面

    您是否考虑将流程更改为以下内容:

    用户连接到 URL -> 在登录页面上提供登录 -> 转到页面 自动重定向到第一页 -> 加载第一页。

    这样,当用户从“第一页”点击返回按钮时,它将获得重定向页面并自动返回“第一页”。

    【讨论】:

    • 感谢您的宝贵时间。
    【解决方案2】:

    您可以在用户登录时将他/她重定向到欢迎页面所需的所有地方使用发布和重定向方法。 如果您看到银行网站或任何其他安全网站,他们已经部署了相同的机制,并且运行良好。

    其次,我建议不要使用ActionContext,因为 Struts2 为您提供了一种更简洁灵活的方式来实现SessionAware 接口,通过实现这一点,您的 Action 无需底层框架依赖并且易于测试

    【讨论】:

    • 感谢您的宝贵时间。
    • 我试图重定向到欢迎页面,但仍然在点击返回按钮时它会移动到登录页面。先生,我一定遗漏了一些东西,你能详细说明一下解决方案吗。
    【解决方案3】:
    <script type="text/javascript">
        function fn()
            {   
                     window.open("WelcomeDirect.action","_self");               
            }
    </script>
    </head>
    <body onLoad="fn()">
    Reloading.....
    </body>
    

    重定向页面

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-18
      • 1970-01-01
      • 1970-01-01
      • 2015-04-04
      • 2023-03-13
      • 2017-04-30
      相关资源
      最近更新 更多