org.apache.wicket.examples.requestmapper
Class RequestMapperApplication

java.lang.Object
  extended by org.apache.wicket.Application
      extended by org.apache.wicket.protocol.http.WebApplication
          extended by org.apache.wicket.examples.WicketExampleApplication
              extended by org.apache.wicket.examples.requestmapper.RequestMapperApplication
All Implemented Interfaces:
IEventSink, ISessionStore.UnboundListener

public class RequestMapperApplication
extends WicketExampleApplication

Author:
mgrigorov

Field Summary
 
Fields inherited from class org.apache.wicket.Application
CONFIGURATION
 
Constructor Summary
RequestMapperApplication()
           
 
Method Summary
 RuntimeConfigurationType getConfigurationType()
          Gets the configuration mode to use for configuring the app, either RuntimeConfigurationType.DEVELOPMENT or RuntimeConfigurationType.DEPLOYMENT.
 Class<? extends Page> getHomePage()
          Application subclasses must specify a home page class by implementing this abstract method.
 void init()
          Initialize; if you need the wicket servlet/filter for initialization, e.g.
 
Methods inherited from class org.apache.wicket.protocol.http.WebApplication
addIgnoreMountPath, get, getAjaxRequestTargetListeners, getAjaxRequestTargetProvider, getAndRemoveBufferedResponse, getApplicationKey, getFilterFactoryManager, getInitParameter, getMimeType, getResourceFinder, getServletContext, getSessionAttributePrefix, getWicketFilter, hasBufferedResponse, hasFilterFactoryManager, internalDestroy, internalInit, logEventTarget, logResponseTarget, mount, mountPackage, mountPage, mountResource, newAjaxRequestTarget, newSession, newWebRequest, newWebResponse, outputDevelopmentModeWarning, sessionUnbound, setAjaxRequestTargetProvider, setServletContext, setWicketFilter, storeBufferedResponse
 
Methods inherited from class org.apache.wicket.Application
configure, createRequestCycle, decorateHeaderResponse, exists, fetchCreateAndSetSession, get, getApplicationKeys, getApplicationSettings, getComponentInitializationListeners, getComponentInstantiationListeners, getComponentOnAfterRenderListeners, getComponentPostOnBeforeRenderListeners, getComponentPreOnBeforeRenderListeners, getConverterLocator, getDebugSettings, getExceptionMapperProvider, getExceptionSettings, getFrameworkSettings, getMapperContext, getMarkupSettings, getMetaData, getName, getPageFactory, getPageManager, getPageManagerContext, getPageManagerProvider, getPageRendererProvider, getPageSettings, getRequestCycleListeners, getRequestCycleProvider, getRequestCycleSettings, getRequestLogger, getRequestLoggerSettings, getResourceReferenceRegistry, getResourceSettings, getRootRequestMapper, getRootRequestMapperAsCompound, getSecuritySettings, getSessionSettings, getSessionStore, getSessionStoreProvider, getSharedResources, initApplication, initializeComponents, newConverterLocator, newMapperContext, newPageFactory, newRequestLogger, newResourceReferenceRegistry, newSharedResources, onDestroy, onEvent, setApplicationSettings, setDebugSettings, setExceptionMapperProvider, setExceptionSettings, setFrameworkSettings, setHeaderResponseDecorator, setMarkupSettings, setMetaData, setName, setPageManagerProvider, setPageRendererProvider, setPageSettings, setRequestCycleProvider, setRequestCycleSettings, setRequestLoggerSettings, setResourceSettings, setRootRequestMapper, setSecuritySettings, setSessionSettings, setSessionStoreProvider, usesDeploymentConfig, usesDevelopmentConfig, validateInit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RequestMapperApplication

public RequestMapperApplication()
Method Detail

getHomePage

public Class<? extends Page> getHomePage()
Description copied from class: Application
Application subclasses must specify a home page class by implementing this abstract method.

Specified by:
getHomePage in class Application
Returns:
Home page class for this application
See Also:
Application.getHomePage()

init

public void init()
Description copied from class: WebApplication
Initialize; if you need the wicket servlet/filter for initialization, e.g. because you want to read an initParameter from web.xml or you want to read a resource from the servlet's context path, you can override this method and provide custom initialization. This method is called right after this application class is constructed, and the wicket servlet/filter is set. Use this method for any application setup instead of the constructor.

Overrides:
init in class WicketExampleApplication
See Also:
WicketExampleApplication.init()

getConfigurationType

public RuntimeConfigurationType getConfigurationType()
Description copied from class: WebApplication
Gets the configuration mode to use for configuring the app, either RuntimeConfigurationType.DEVELOPMENT or RuntimeConfigurationType.DEPLOYMENT.

The configuration type. Must currently be either DEVELOPMENT or DEPLOYMENT. Currently, if the configuration type is DEVELOPMENT, resources are polled for changes, component usage is checked, wicket tags are not stripped from output and a detailed exception page is used. If the type is DEPLOYMENT, component usage is not checked, wicket tags are stripped from output and a non-detailed exception page is used to display errors.

Note that you should not run Wicket in DEVELOPMENT mode on production servers - the various debugging checks and resource polling is inefficient and may leak resources, particularly on webapp redeploy.

To change the deployment mode, add the following to your web.xml, inside your mapping (or mapping if you're using 1.3.x):

 <init-param>
             <param-name>configuration</param-name>
             <param-value>deployment</param-value>
 </init-param>
 

You can alternatively set this as a <context-param> on the whole context.

Another option is to set the "wicket.configuration" system property to either "deployment" or "development". The value is not case-sensitive.

The system property is checked first, allowing you to add a web.xml param for deployment, and a command-line override when you want to run in development mode during development.

You may also override Application.getConfigurationType() to provide your own custom switch, in which case none of the above logic is used.

IMPORTANT NOTE

THIS METHOD IS CALLED OFTEN FROM MANY DIFFERENT POINTS IN CODE, INCLUDING DURING THE RENDER PROCESS, THEREFORE THE IMPLEMENTATION SHOULD BE FAST - PREFERRABLY USING A FAST-TO-RETRIEVE CACHED VALUE

Overrides:
getConfigurationType in class WebApplication
Returns:
configuration
See Also:
WebApplication.getConfigurationType()


Copyright © 2004-2011 Apache Software Foundation. All Rights Reserved.