org.apache.wicket.request.handler.render
Class PageRenderer

java.lang.Object
  extended by org.apache.wicket.request.handler.render.PageRenderer
Direct Known Subclasses:
WebPageRenderer

public abstract class PageRenderer
extends java.lang.Object

Delegate responsible for rendering the page. Depending on the implementation (web, test, portlet, etc.) the delegate may or may not support the redirect policy set in the RenderPageRequestHandler.

Author:
Matej Knopp

Constructor Summary
PageRenderer(RenderPageRequestHandler renderPageRequestHandler)
          Construct.
 
Method Summary
protected  boolean enableRedirectForStatelessPage()
          When the page renders to buffer and it is still stateless after rendering, this flag determines whether the redirect will take place or not.
protected  IRequestablePage getPage()
           
protected  IPageProvider getPageProvider()
           
protected  RenderPageRequestHandler.RedirectPolicy getRedirectPolicy()
           
protected  RenderPageRequestHandler getRenderPageRequestHandler()
           
protected  java.lang.String getSessionId()
           
protected  boolean isOnePassRender()
           
protected  boolean isRedirectToBuffer()
           
protected  boolean isRedirectToRender()
           
protected  boolean isSessionTemporary()
           
abstract  void respond(RequestCycle requestCycle)
          Render the response using give RequestCycle.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PageRenderer

public PageRenderer(RenderPageRequestHandler renderPageRequestHandler)
Construct.

Parameters:
renderPageRequestHandler -
Method Detail

getPageProvider

protected IPageProvider getPageProvider()
Returns:
page provider

getRedirectPolicy

protected RenderPageRequestHandler.RedirectPolicy getRedirectPolicy()
Returns:
redirect policy

getRenderPageRequestHandler

protected RenderPageRequestHandler getRenderPageRequestHandler()
Returns:
the request handler

getPage

protected IRequestablePage getPage()
Returns:
page instance

isOnePassRender

protected boolean isOnePassRender()

isRedirectToRender

protected boolean isRedirectToRender()

isRedirectToBuffer

protected boolean isRedirectToBuffer()

getSessionId

protected java.lang.String getSessionId()
Returns:
the current session id for stateful pages and null for stateless pages

isSessionTemporary

protected boolean isSessionTemporary()

enableRedirectForStatelessPage

protected boolean enableRedirectForStatelessPage()
When the page renders to buffer and it is still stateless after rendering, this flag determines whether the redirect will take place or not.

By default we will redirect. This is so we do not end up having the browser be on a listener URL. A simple scenario is calling setResponsePage(new StatelessPage()) inside form's onSubmit() or link's onClick() callbacks, or any other listener interface callback. What will happen is that the browser will be on URL like ./wicket/page?0-2.IFormSubmitListener-form, and we will not redirect - leaving the browser on such URL. This is a worse alternative then saving one redirect because it may cause problems if user presses the refresh button in the browser.

Returns:
redirect flag

respond

public abstract void respond(RequestCycle requestCycle)
Render the response using give RequestCycle.

Parameters:
requestCycle -


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