public abstract class RenderBlock extends AbstractComponent
Blockcomponent. [ Component Reference ]
It is possible for an RenderBlock to obtain a Block from a page other than the render page. This works, even when the Block contains links, forms and form components. The action and direct services will create URLs that properly address this situation.
However, because the rendering page can't know ahead of time about these foreign Blocks,
PageBeginRenderListener and
PageEndRenderListener methods (for components and objects of the
foreign page) via RenderBlock will not be executed. This specifically affects the
methods of the PageBeginRenderListener and
PageEndRenderListener interfaces.
Before rendering its Block, RenderBlock will set itself as the Block's inserter, and
will reset the inserter after the Blockis rendered. This gives the components contained
in the Blockaccess to its inserted environment via the RenderBlock. In particular this
allows the contained components to access the informal parameters of the RenderBlock which
effectively allows parameters to be passed to the components contained in a Block.
| Constructor and Description |
|---|
RenderBlock() |
| Modifier and Type | Method and Description |
|---|---|
abstract Block |
getBlock() |
protected void |
renderComponent(IMarkupWriter writer,
IRequestCycle cycle)
If block is not null, then
Block.renderForComponent(IMarkupWriter, IRequestCycle, IComponent) is invoked. |
addAsset, addBody, addComponent, checkActiveLock, cleanupAfterRender, enterActiveState, finishLoad, finishLoad, format, format, format, format, getAsset, getAssets, getBeans, getBinding, getBindingNames, getBindings, getBody, getBodyCount, getComponent, getComponents, getContainedComponent, getContainer, getExtendedId, getId, getIdPath, getListeners, getMessage, getMessages, getNamespace, getPage, getProperty, getSpecification, isInActiveState, isParameterBound, isRendering, pageEndRender, prepareForRender, render, renderBody, renderInformalParameters, setBinding, setContainedComponent, setContainer, setId, setNamespace, setPage, setProperty, toStringpublic RenderBlock()
protected void renderComponent(IMarkupWriter writer, IRequestCycle cycle)
Block.renderForComponent(IMarkupWriter, IRequestCycle, IComponent) is invoked.renderComponent in class AbstractComponent