Buggy code:
private List stringResourceLoaders = new ArrayList ( 4 ) ; private boolean stripComments = false ; private boolean stripWicketTags = false ; private boolean stripXmlDeclarationFromOutput ; private boolean throwExceptionOnMissingResource = true ; private Duration timeout = Duration . ONE_MINUTE ; private IUnauthorizedComponentInstantiationListener unauthorizedComponentInstantiationListener = new IUnauthorizedComponentInstantiationListener ( ) { public void onUnauthorizedInstantiation ( final Component component ) { } } ; private UnexpectedExceptionDisplay unexpectedExceptionDisplay = SHOW_EXCEPTION_PAGE ; private boolean useDefaultOnMissingResource = true ; private boolean versionPagesByDefault = true ; private boolean recordSessionSize = true ; private int requestsWindowSize = 0 ; private boolean requestLoggerEnabled ; private boolean stripJavascriptCommentsAndWhitespace ; private boolean outputMarkupContainerClassName = false ; public Settings ( final Application application ) { } public void addComponentResolver ( IComponentResolver resolver ) { } public void addResourceFactory ( final String name , IResourceFactory resourceFactory ) { } public void addResourceFolder ( final String resourceFolder ) { } public void addResponseFilter ( IResponseFilter responseFilter ) { } public void addStringResourceLoader ( final IStringResourceLoader loader ) { } public Class getAccessDeniedPage ( ) { } public IAuthorizationStrategy getAuthorizationStrategy ( ) { } public boolean getAutomaticLinking ( ) { } public boolean getAutomaticMultiWindowSupport ( ) { } public boolean getBufferResponse ( ) { } public IClassResolver getClassResolver ( ) { } public List getComponentResolvers ( ) { } public boolean getComponentUseCheck ( ) { } public boolean getCompressWhitespace ( ) { } public CookieValuePersisterSettings getCookieValuePersisterSettings ( ) { } public synchronized ICryptFactory getCryptFactory ( ) { } public String getDefaultAfterDisabledLink ( ) { } public String getDefaultBeforeDisabledLink ( ) { } public String getDefaultMarkupEncoding ( ) { } public boolean getDisableGZipCompression ( ) { } public boolean getEnforceMounts ( ) { } public boolean getGatherExtendedBrowserInfo ( ) { } public Class getInternalErrorPage ( ) { } public Localizer getLocalizer ( ) { } public IMarkupParserFactory getMarkupParserFactory ( ) { } public final int getMaxPageMaps ( ) { } public IPackageResourceGuard getPackageResourceGuard ( ) { } public Class getPageExpiredErrorPage ( ) { } public IPageFactory getPageFactory ( ) { } public IPageMapEvictionStrategy getPageMapEvictionStrategy ( ) { } public IPropertiesFactory getPropertiesFactory ( ) { } public RenderStrategy getRenderStrategy ( ) { } public IResourceFactory getResourceFactory ( final String name ) { } public IResourceFinder getResourceFinder ( ) { } public Duration getResourcePollFrequency ( ) { } public IResourceStreamLocator getResourceStreamLocator ( ) { } public ModificationWatcher getResourceWatcher ( boolean start ) { } public List getResponseFilters ( ) { } public String getResponseRequestEncoding ( ) { } public List getStringResourceLoaders ( ) { } public boolean getStripComments ( ) { } public boolean getStripWicketTags ( ) { } public boolean getStripXmlDeclarationFromOutput ( ) { } public boolean getThrowExceptionOnMissingResource ( ) { } public Duration getTimeout ( ) { } public IUnauthorizedComponentInstantiationListener getUnauthorizedComponentInstantiationListener ( ) { } public UnexpectedExceptionDisplay getUnexpectedExceptionDisplay ( ) { } public boolean getUseDefaultOnMissingResource ( ) { } public String getVersion ( ) { } public boolean getVersionPagesByDefault ( ) { } public boolean isAjaxDebugModeEnabled ( ) { } public void setAccessDeniedPage ( Class accessDeniedPage ) { } public void setAjaxDebugModeEnabled ( boolean enable ) { } public void setAuthorizationStrategy ( IAuthorizationStrategy strategy ) { } public void setAutomaticLinking ( boolean automaticLinking ) { } public void setAutomaticMultiWindowSupport ( boolean automaticMultiWindowSupport ) { } public void setBufferResponse ( boolean bufferResponse ) { } public void setClassResolver ( final IClassResolver defaultClassResolver ) { } public void setComponentUseCheck ( final boolean componentUseCheck ) { } public void setCompressWhitespace ( final boolean compressWhitespace ) { } public void setCookieValuePersisterSettings ( CookieValuePersisterSettings cookieValuePersisterSettings ) { } public void setCryptFactory ( ICryptFactory cryptFactory ) { } public void setDefaultAfterDisabledLink ( final String defaultAfterDisabledLink ) { } public void setDefaultBeforeDisabledLink ( String defaultBeforeDisabledLink ) { } public void setDefaultMarkupEncoding ( final String encoding ) { } public void setDisableGZipCompression ( boolean disableGZipCompression ) { } public void setEnforceMounts ( boolean enforce ) { } public void setGatherExtendedBrowserInfo ( boolean gatherExtendedBrowserInfo ) { } public void setInternalErrorPage ( final Class internalErrorPage ) { } public void setMarkupParserFactory ( IMarkupParserFactory factory ) { } public final void setMaxPageMaps ( int maxPageMaps ) { } public void setPackageResourceGuard ( IPackageResourceGuard packageResourceGuard ) { } public void setPageExpiredErrorPage ( final Class pageExpiredErrorPage ) { } public void setPageFactory ( final IPageFactory defaultPageFactory ) { } public void setPageMapEvictionStrategy ( IPageMapEvictionStrategy pageMapEvictionStrategy ) { } public void setPropertiesFactory ( IPropertiesFactory factory ) { } public void setRenderStrategy ( IRequestCycleSettings . RenderStrategy renderStrategy ) { } public void setResourceFinder ( final IResourceFinder resourceFinder ) { } public void setResourcePollFrequency ( final Duration resourcePollFrequency ) { } public void setResourceStreamLocator ( IResourceStreamLocator resourceStreamLocator ) { } public void setResponseRequestEncoding ( final String responseRequestEncoding ) { } public void setStripComments ( boolean stripComments ) { } public void setStripWicketTags ( boolean stripWicketTags ) { } public void setStripXmlDeclarationFromOutput ( final boolean strip ) { } public void setThrowExceptionOnMissingResource ( final boolean throwExceptionOnMissingResource ) { } public void setTimeout ( Duration timeout ) { } public void setUnauthorizedComponentInstantiationListener ( IUnauthorizedComponentInstantiationListener unauthorizedComponentInstantiationListener ) { } public void setUnexpectedExceptionDisplay ( final UnexpectedExceptionDisplay unexpectedExceptionDisplay ) { } public void setUseDefaultOnMissingResource ( final boolean useDefaultOnMissingResource ) { } public void setVersionPagesByDefault ( boolean pagesVersionedByDefault ) { } private void checkPageClass ( final Class pageClass ) { } public boolean getRecordSessionSize ( ) { } public int getRequestsWindowSize ( ) { } public boolean isRequestLoggerEnabled ( ) { } public void setRecordSessionSize ( boolean record ) { } public void setRequestLoggerEnabled ( boolean enable ) { } public void setRequestsWindowSize ( int size ) { } public boolean getStripJavascriptCommentsAndWhitespace ( ) { } public void setStripJavascriptCommentsAndWhitespace ( boolean value ) { } public void setOutputMarkupContainerClassName ( boolean enable ) { } public boolean isOutputMarkupContainerClassName ( ) { } public IMarkupCache getMarkupCache ( ) { if ( ( this . markupCache ) == null ) { <START_BUG> this . markupCache = new MarkupCache ( ) ; <END_BUG> } return this . markupCache ; } public void setMarkupCache ( final IMarkupCache markupCache ) { } }

Fix:
this . markupCache = new org . apache . wicket . markup . MarkupCache ( application ) ;