struts2在二級域名下redirect的問題

問題描述: 在struts環境下,不能跳轉到理想的url地址javascript

好比登錄以後但願跳轉到 http://w.xxx.com/system/home_enter.actionjava

而實際上跳轉到了  http://w.xxx.com/demo/system/home.actionweb

找了好久問題的根源,最後發現原來是配置了redirectjsp

<result name="success" type="redirect">/system/home_enter.action</result>url

查了一下struts2 redirect源碼,發現他默認會帶上 request.getContextPatch();ip

想了好久,想從代碼入手,最終無果。資源

最後只好選擇了一種折中的辦法。get

去掉  type="redirect" 改爲jsp頁面源碼

<result name="success" >/web/business/system/login/success.jsp</result>io

而後在頁面上經過javascript腳本進行人爲的跳轉。

    <script>
         function loadHome()
         {
             top.window.location="/system/home_enter.action";
         }
    </script>
</head>

<body class="login-layout light-login">
      <div>正在加載資源...請稍後...</div>
      <script>
        loadHome();
        </script>    
    </body>

這樣最終解決了這個棘手的問題。

後面還發現一個相似的問題,可是有不少action用到了,不太好改,研究一下代碼,實際上都是調用的模板類的enter方法,經過修改代碼來指定調用enter方法來解決此問題。

相關文章
相關標籤/搜索