Buggy code:
public class HybridUrlCodingStrategy extends AbstractRequestTargetUrlCodingStrategy { protected final WeakReference pageClassRef ; private final boolean redirectOnBookmarkableRequest ; public HybridUrlCodingStrategy ( String mountPath , Class pageClass , boolean redirectOnBookmarkableRequest ) { } public HybridUrlCodingStrategy ( String mountPath , Class pageClass ) { } private int getTrailingSlashesCount ( CharSequence seq ) { } protected boolean isRedirectOnBookmarkableRequest ( ) { } protected boolean alwaysRedirectWhenPageMapIsSpecified ( ) { } public IRequestTarget decode ( RequestParameters requestParameters ) { } protected IRequestTarget handleExpiredPage ( String pageMapName , Class pageClass , int trailingSlashesCount , boolean redirect ) { } private Integer getOriginalOriginalTrailingSlashesCount ( IRequestTarget requestTarget ) { } private PageParameters getPageParameters ( IRequestTarget requestTarget ) { } private HybridUrlCodingStrategy . PageInfo getPageInfo ( IRequestTarget requestTarget ) { } public static void setInitialPageParameters ( Page page , PageParameters pageParameters ) { } public static PageParameters getInitialPagePageParameters ( Page page ) { } public static final HybridUrlCodingStrategy . PageParametersMetaDataKey PAGE_PARAMETERS_META_DATA_KEY = new HybridUrlCodingStrategy . PageParametersMetaDataKey ( ) ; private static class PageParametersMetaDataKey extends MetaDataKey { private static final long serialVersionUID = 1L ; public PageParametersMetaDataKey ( ) { } } private static final HybridUrlCodingStrategy . OriginalUrlTrailingSlashesCountMetaDataKey ORIGINAL_TRAILING_SLASHES_COUNT_METADATA_KEY = new HybridUrlCodingStrategy . OriginalUrlTrailingSlashesCountMetaDataKey ( ) ; private static class OriginalUrlTrailingSlashesCountMetaDataKey extends MetaDataKey { private static final long serialVersionUID = 1L ; public OriginalUrlTrailingSlashesCountMetaDataKey ( ) { } } private void fixTrailingSlashes ( AppendingStringBuffer buffer , int desiredCount ) { } public CharSequence encode ( IRequestTarget requestTarget ) { } public boolean matches ( IRequestTarget requestTarget ) { } protected static class PageInfoExtraction { private final String urlAfterExtraction ; private final HybridUrlCodingStrategy . PageInfo pageInfo ; public PageInfoExtraction ( String urlAfterExtraction , HybridUrlCodingStrategy . PageInfo pageInfo ) { } public HybridUrlCodingStrategy . PageInfo getPageInfo ( ) { } public String getUrlAfterExtraction ( ) { } } protected HybridUrlCodingStrategy . PageInfoExtraction extractPageInfo ( String url ) { } protected String getBeginSeparator ( ) { } protected String getEndSeparator ( ) { } protected String addPageInfo ( String url , HybridUrlCodingStrategy . PageInfo pageInfo ) { } protected static class PageInfo { private final Integer pageId ; private final Integer versionNumber ; private final String pageMapName ; public PageInfo ( Integer pageId , Integer versionNumber , String pageMapName ) { } public Integer getPageId ( ) { } public Integer getVersionNumber ( ) { } public String getPageMapName ( ) { } private static char getPageInfoSeparator ( ) { } public String toString ( ) { } private static boolean isNumber ( String string ) { } public static HybridUrlCodingStrategy . PageInfo parsePageInfo ( String src ) { } } public static class HybridBookmarkablePageRequestTarget extends BookmarkablePageRequestTarget { private final int originalUrlTrailingSlashesCount ; private final boolean redirect ; public HybridBookmarkablePageRequestTarget ( String pageMapName , Class pageClass , PageParameters pageParameters , int originalUrlTrailingSlashesCount , boolean redirect ) { } protected Page newPage ( Class pageClass , RequestCycle requestCycle ) { Page page = super . newPage ( pageClass , requestCycle ) ; <START_BUG> page . setMetaData ( HybridUrlCodingStrategy . PAGE_PARAMETERS_META_DATA_KEY , getPageParameters ( ) ) ; <END_BUG> page . setMetaData ( HybridUrlCodingStrategy . ORIGINAL_TRAILING_SLASHES_COUNT_METADATA_KEY , new Integer ( originalUrlTrailingSlashesCount ) ) ; return page ; } public void respond ( RequestCycle requestCycle ) { } } public boolean matches ( String path ) { } public String toString ( ) { } }

Fix:
page . setMetaData ( HybridUrlCodingStrategy . PAGE_PARAMETERS_META_DATA_KEY , new PageParameters ( getPageParameters ( ) ) ) ;