如何在wicket 1.5中实现后退按钮
我发现了很多关于如何在wicket中创建back按钮的例子,但是wicket 1.4和更低版本中使用了如何在wicket 1.5中实现后退按钮,wicket,Wicket,我发现了很多关于如何在wicket中创建back按钮的例子,但是wicket 1.4和更低版本中使用了getPageMap。wicket 1.5中没有此功能。我知道有一些js特性,比如window.history.back()或history.go(-1),但我想实现一些清晰的解决方案。有什么想法吗 我的想法是将网页作为堆栈存储在我自己的网页中。这个好吗 public class TournamentSession extends WebSession { protected final Lo
getPageMap
。wicket 1.5中没有此功能。我知道有一些js特性,比如window.history.back()
或history.go(-1
),但我想实现一些清晰的解决方案。有什么想法吗
我的想法是将网页作为堆栈存储在我自己的网页中。这个好吗
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;
}
}
public class TournamentSession扩展WebSession{
受保护的最终记录器Logger=LoggerFactory.getLogger(getClass());
私有静态最终长serialVersionUID=1L;
私有堆栈previosPage=新堆栈();
公开锦标赛会话(请求){
超级(请求);
}
公共void addPreviosPage(BasePage BasePage){
logger.info(basePage.getClass().toString());
previosPage.push(基本页面);
}
公共基本页getPreviousPage(){
BasePage BasePage=previosPage.pop();
logger.info(basePage.getClass().toString());
返回基本页面;
}
}
当页面呈现时,将实际页面存储到此堆栈中使用
会话。getPageManager()。getPage(id)
浏览器导航是否不能正常工作?如果它按预期工作,我认为JavaScript调用就可以了。WebSession设置了大小限制,保存到多个页面将导致会话无效。您还可以将上一页作为构造函数参数发送,并使用setResponsePage(previousPage)方法