org.apache.wicket.authentication
Class AuthenticatedWebApplication

java.lang.Object
  extended by org.apache.wicket.Application
      extended by org.apache.wicket.protocol.http.WebApplication
          extended by org.apache.wicket.authentication.AuthenticatedWebApplication
All Implemented Interfaces:
org.apache.wicket.authorization.IUnauthorizedComponentInstantiationListener, IRoleCheckingStrategy

public abstract class AuthenticatedWebApplication
extends org.apache.wicket.protocol.http.WebApplication
implements IRoleCheckingStrategy, org.apache.wicket.authorization.IUnauthorizedComponentInstantiationListener

A web application subclass that does role-based authentication.

Author:
Jonathan Locke

Field Summary
 
Fields inherited from class org.apache.wicket.Application
CONFIGURATION, CONTEXTPATH, DEPLOYMENT, DEVELOPMENT
 
Constructor Summary
AuthenticatedWebApplication()
          Constructor
 
Method Summary
protected abstract  java.lang.Class<? extends org.apache.wicket.markup.html.WebPage<?>> getSignInPageClass()
           
protected abstract  java.lang.Class<? extends AuthenticatedWebSession> getWebSessionClass()
           
 boolean hasAnyRole(Roles roles)
          Whether any of the given roles matches.
protected  void init()
           
 org.apache.wicket.Session newSession(org.apache.wicket.Request request, org.apache.wicket.Response response)
           
 void onUnauthorizedInstantiation(org.apache.wicket.Component<?> component)
           
protected  void onUnauthorizedPage(org.apache.wicket.Page<?> page)
          Called when an AUTHENTICATED user tries to navigate to a page that they are not authorized to access.
 
Methods inherited from class org.apache.wicket.protocol.http.WebApplication
addIgnoreMountPath, get, getApplicationKey, getConfigurationType, getDefaultRequestCycleFactory, getInitParameter, getRequestCycleProcessor, getResourceFinder, getServletContext, getSessionAttributePrefix, getWicketFilter, internalDestroy, internalInit, logEventTarget, logResponseTarget, mount, mount, mountBookmarkablePage, mountBookmarkablePage, mountSharedResource, newAjaxRequestTarget, newRequestCycle, newRequestCycleProcessor, newSession, newSession, newSessionStore, newWebRequest, newWebResponse, outputDevelopmentModeWarning, sessionDestroyed, setApplicationKey, setWicketFilter, unmount
 
Methods inherited from class org.apache.wicket.Application
addComponentInstantiationListener, addComponentOnAfterRenderListener, addPostComponentOnBeforeRenderListener, addPreComponentOnBeforeRenderListener, addRenderHeadListener, configure, destroy, exists, get, getApplicationKeys, getApplicationSettings, getConverterLocator, getDebugSettings, getExceptionSettings, getFrameworkSettings, getHomePage, getMarkupCache, getMarkupSettings, getMetaData, getName, getPageSettings, getRequestCycleFactory, getRequestCycleSettings, getRequestLogger, getRequestLoggerSettings, getResourceSettings, getSecuritySettings, getSessionFactory, getSessionSettings, getSessionStore, getSharedResources, initializeComponents, newConverterLocator, newRequestCycle, newRequestLogger, notifyRenderHeadListener, onDestroy, removeComponentInstantiationListener, removeComponentOnAfterRenderListener, removePostComponentOnBeforeRenderListener, removePreComponentOnBeforeRenderListener, removeRenderHeadListener, set, setMetaData, unset
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AuthenticatedWebApplication

public AuthenticatedWebApplication()
Constructor

Method Detail

init

protected void init()
Overrides:
init in class org.apache.wicket.protocol.http.WebApplication

hasAnyRole

public final boolean hasAnyRole(Roles roles)
Description copied from interface: IRoleCheckingStrategy
Whether any of the given roles matches. For example, if a user has role USER and the provided roles are {USER, ADMIN} this method should return true as the user has at least one of the roles that were provided.

Specified by:
hasAnyRole in interface IRoleCheckingStrategy
Parameters:
roles - the roles
Returns:
true if a user or whatever subject this implementation wants to work with has at least on of the provided roles
See Also:
IRoleCheckingStrategy.hasAnyRole(Roles)

onUnauthorizedInstantiation

public final void onUnauthorizedInstantiation(org.apache.wicket.Component<?> component)
Specified by:
onUnauthorizedInstantiation in interface org.apache.wicket.authorization.IUnauthorizedComponentInstantiationListener
See Also:
IUnauthorizedComponentInstantiationListener.onUnauthorizedInstantiation(Component)

newSession

public org.apache.wicket.Session newSession(org.apache.wicket.Request request,
                                            org.apache.wicket.Response response)
Overrides:
newSession in class org.apache.wicket.protocol.http.WebApplication
See Also:
WebApplication.newSession(org.apache.wicket.Request, org.apache.wicket.Response)

getWebSessionClass

protected abstract java.lang.Class<? extends AuthenticatedWebSession> getWebSessionClass()
Returns:
AuthenticatedWebSession subclass to use in this authenticated web application.

getSignInPageClass

protected abstract java.lang.Class<? extends org.apache.wicket.markup.html.WebPage<?>> getSignInPageClass()
Returns:
Subclass of sign-in page

onUnauthorizedPage

protected void onUnauthorizedPage(org.apache.wicket.Page<?> page)
Called when an AUTHENTICATED user tries to navigate to a page that they are not authorized to access. You might want to override this to navigate to some explanatory page or to the application's home page.

Parameters:
page - The page


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