[Java] Struts2 jQuery的選項卡式面板超時不會觸發事件



Answers

Question

在頁面上有一個<sj:tabbedppanel> 。 會話超時後,嘗試點擊另一個選項卡的面板應重定向用戶登錄poage。 <sj:tabbed> onErrorTopics <sj:tabbed>面板不會觸發onErrorTopics 。 請參閱下面的指導我如何解決這個問題。 我看到在火錯誤403錯誤被拋出,但我無法在jsp中捕捉它。 需要相同的幫助。

在struts.xml

    <action name="secondPanel" class="com.xxx.secondPanelAction">
        <interceptor-ref name="sampleDefaultStack" />

        <result>/jsp/secondPanel.jsp</result> 
        <result name="login" type="httpheader">
            <param name="error">403</param>
            <param name="errorMessage">User session expired      </param>
        </result>
    </action>

JSP

<sj:tabbedpanel id="remotetabs" selectedTab="0" show="true"   hide="'fade'" collapsible="true" sortable="true" onErrorTopics="loadError">
    <sj:tab id="tab2" href="%{createUrl}" key="label.create" onErrorTopics="loadError"/>
    <sj:tab id="tab1" href="%{updateUrl}" key="label.update" onErrorTopics="loadError"/>
</sj:tabbedpanel>

<script type="text/javascript" >
    $(document).ready(function() {  
      $.subscribe('loadError', function(event, data) { alert('in error');
      var status = event.originalEvent.status;

      if(status == 403 ) {
          window.location.href = "/Sample/login.action";
      }
    }); 
</script>