[ 
https://issues.apache.org/jira/browse/DELTASPIKE-524?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Gerhard Petracek reassigned DELTASPIKE-524:
-------------------------------------------

    Assignee: Gerhard Petracek

> illegal implementation of SecurityAwareViewHandler
> --------------------------------------------------
>
>                 Key: DELTASPIKE-524
>                 URL: https://issues.apache.org/jira/browse/DELTASPIKE-524
>             Project: DeltaSpike
>          Issue Type: Bug
>          Components: JSF-Module
>    Affects Versions: 0.5
>            Reporter: Markus Schulz
>            Assignee: Gerhard Petracek
>
> the implementation of the SecurityAwareViewHandler use something like this:
> {quote}
> public UIViewRoot createView(FacesContext context, String viewId)
> {
> ..
>         context.setViewRoot(result);
> ...
>             if (originalViewRoot != null)
>             {
>                 context.setViewRoot(originalViewRoot);
>             }
> ..
> }
> {quote}
> But the call to context.setViewRoot(..) will clear the viewMap of the current 
> active ViewRoot and therefore it destroys the state of current view.
> Sample:
> ViewDeclarationLanguage vdl = 
> context.getApplication().getViewHandler().getViewDeclarationLanguage(context, 
> cleanTargetViewName);
> ViewMetadata viewMetadata = vdl.getViewMetadata(context, cleanTargetViewName);
> UIViewRoot viewRoot = viewMetadata.createMetadataView(context);
> targetViewParams = ViewMetadata.getViewParameters(viewRoot);
> the call to viewMetadata.createMetadataView(context) will destroy my current 
> viewMap. 
> That should not be happen.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to