[
https://issues.apache.org/jira/browse/DELTASPIKE-576?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Gerhard Petracek resolved DELTASPIKE-576.
-----------------------------------------
Resolution: Fixed
> improved integration with view-controller
> -----------------------------------------
>
> Key: DELTASPIKE-576
> URL: https://issues.apache.org/jira/browse/DELTASPIKE-576
> Project: DeltaSpike
> Issue Type: Improvement
> Components: JSF-Module
> Affects Versions: 0.6
> Reporter: Gerhard Petracek
> Assignee: Gerhard Petracek
> Fix For: 0.7
>
>
> currently there is no proper handling of exceptions in @PreRenderView
> callbacks
> with that it's e.g. possible to use:
> {code}
> @ExceptionHandler
> public class ErrorViewAwareExceptionHandler {
> @Inject
> private ViewConfigResolver viewConfigResolver;
> public void onIllegalStateException(@Handles
> ExceptionEvent<IllegalStateException> e)
> {
> FacesContext facesContext = FacesContext.getCurrentInstance();
> String viewId =
> viewConfigResolver.getDefaultErrorViewConfigDescriptor().getViewId();
> UIViewRoot viewRoot =
> facesContext.getApplication().getViewHandler().createView(facesContext,
> viewId);
> facesContext.setViewRoot(viewRoot);
> //... - e.g.: store the exception in a page-bean for the
> default-error-view
> }
> }
> {code}
> later on we could support it out-of-the-box - e.g. via something like:
> {code}
> @ErrorView(forException = {IllegalStateException.class})
> class Error extends DefaultErrorView {}
> {code}
--
This message was sent by Atlassian JIRA
(v6.2#6252)