public class OmniPartialViewContext extends PartialViewContextWrapper
This OmniFaces partial view context extends and improves the standard partial view context as follows:
PartialResponseWriter.startEval().ViewExpiredException occurs during an ajax request on a page which
is restricted by web.xml <security-constraint>. The enduser will now properly be
redirected to the login page instead of retrieving an ajax response with only a changed view state (and effectively
thus no visual feedback at all).Ajax utility class to easily add callback scripts and arguments.
This partial view context is already registered by OmniFaces' own faces-config.xml and thus gets
auto-initialized when the OmniFaces JAR is bundled in a web application, so end-users do not need to register this
partial view context explicitly themselves.
OmniPartialViewContextFactoryALL_PARTIAL_PHASE_CLIENT_IDS, PARTIAL_EXECUTE_PARAM_NAME, PARTIAL_RENDER_PARAM_NAME| Constructor and Description |
|---|
OmniPartialViewContext(PartialViewContext wrapped)
Construct a new OmniFaces partial view context around the given wrapped partial view context.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addArgument(String name,
Object value)
Add an argument to the partial response.
|
void |
addCallbackScript(String callbackScript)
Add a callback script to the partial response.
|
void |
closePartialResponse()
Close the partial response.
|
static OmniPartialViewContext |
getCurrentInstance()
Returns the current instance of the OmniFaces partial view context.
|
static OmniPartialViewContext |
getCurrentInstance(FacesContext context)
Returns the current instance of the OmniFaces partial view context from the given faces context.
|
PartialResponseWriter |
getPartialResponseWriter() |
PartialViewContext |
getWrapped() |
void |
processPartial(PhaseId phaseId)
An override which checks if the web.xml security constraint has been triggered during this ajax request
(which can happen when the session has been timed out) and if so, then perform a redirect to the originally
requested page.
|
void |
resetPartialResponse()
Reset the partial response.
|
void |
setPartialRequest(boolean partialRequest) |
getExecuteIds, getRenderIds, isAjaxRequest, isExecuteAll, isPartialRequest, isRenderAll, release, setRenderAllpublic OmniPartialViewContext(PartialViewContext wrapped)
wrapped - The wrapped partial view context.public PartialResponseWriter getPartialResponseWriter()
getPartialResponseWriter in class PartialViewContextWrapperpublic void processPartial(PhaseId phaseId)
processPartial in class PartialViewContextWrapperpublic void setPartialRequest(boolean partialRequest)
setPartialRequest in class PartialViewContextpublic PartialViewContext getWrapped()
getWrapped in interface FacesWrapper<PartialViewContext>getWrapped in class PartialViewContextWrapperpublic void addArgument(String name, Object value)
OmniFaces.Ajax.data.
For supported argument value types, read Json.encode(Object). If a given argument type is not supported,
then an IllegalArgumentException will be thrown during end of render response.name - The argument name.value - The argument value.public void addCallbackScript(String callbackScript)
callbackScript - The callback script to be added to the partial response.public void resetPartialResponse()
PartialResponseWriter.FullAjaxExceptionHandlerpublic void closePartialResponse()
FullAjaxExceptionHandlerpublic static OmniPartialViewContext getCurrentInstance()
IllegalStateException - When there is no current instance of the OmniFaces partial view context. That can
happen when the OmniPartialViewContextFactory is not properly registered, or when there's another
PartialViewContext implementation which doesn't properly delegate through the wrapped instance.public static OmniPartialViewContext getCurrentInstance(FacesContext context)
context - The faces context to obtain the current instance of the OmniFaces partial view context from.IllegalStateException - When there is no current instance of the OmniFaces partial view context. That can
happen when the OmniPartialViewContextFactory is not properly registered, or when there's another
PartialViewContext implementation which doesn't properly delegate through the wrapped instance.Copyright © 2012–2016 OmniFaces. All rights reserved.