2012-12-14 68 views
0

我發現了很多示例如何在檢票中創建後退按鈕,但它在1.4和更低的位置使用getPageMap。此功能不在1.5檢票。我知道有一些js功能爲window.history.back()history.go(-1),但我想實現一些明確的解決方案。任何想法 ?如何實現檢票口中的後退按鈕1.5

我的想法是將webPage作爲堆棧存儲在我自己的webSesion中。這個好嗎 ?

public class TournamentSession extends WebSession { 

protected final Logger logger = LoggerFactory.getLogger(getClass()); 

private static final long serialVersionUID = 1L; 
private Stack<BasePage> previosPage = new Stack<BasePage>(); 

public TournamentSession(Request request) { 
    super(request); 
} 

public void addPreviosPage(BasePage basePage) { 
    logger.info(basePage.getClass().toString()); 
    previosPage.push(basePage); 
} 

public BasePage getPreviousPage() { 
    BasePage basePage = previosPage.pop(); 
    logger.info(basePage.getClass().toString()); 

    return basePage; 
} 
} 

,當頁面是呈現店內實際頁面,這個堆棧

+0

瀏覽器導航不工作,因爲它應該適合你?如果它按預期工作,我認爲JavaScript調用是好的。 –

+0

WebSession對大小設置了限制,保存到很多頁面會導致會話失效。 http://ci.apache.org/projects/wicket/apidocs/6.0.x/org/apache/wicket/Session.html#getSizeInBytes%28%29 – divanov

+0

您也可以將上一頁作爲構造函數參數發送並使用setResponsePage(previousPage)方法 – user1266343

回答

0

使用session.getPageManager().getPage(id)