@Override
public WOComponent pageWithContextTaskEntity(D2WContext d2wcontext, String task, String entity, WOContext wocontext) {
WOComponent nextPage = super.pageWithContextTaskEntity(d2wcontext, task, entity, wocontext);
if (nextPage instanceof D2WPage) {
String oldState = ERXNavigationManager.manager().navigationStateForSession(wocontext.session()).stateAsString();
D2WPage page = (D2WPage) nextPage;
page.setNextPage(currentPage());
String newState = (String) page.d2wContext().valueForKey("navigationState");
if(oldState != null) {
if(newState == null || oldState.startsWith(newState)) {
page.d2wContext().takeValueForKey(oldState, "navigationState");
}
}
log.debug("Create page: " + page.d2wContext().dynamicPage() + " old: " + oldState + " news: " + newState);
}
return nextPage;
}