Uploaded image for project: 'DeltaSpike'
  1. DeltaSpike
  2. DELTASPIKE-524

preserve view-parameters

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.5
    • 0.6
    • JSF-Module
    • None

    Description

      the implementation of the SecurityAwareViewHandler use something like this:

      public UIViewRoot createView(FacesContext context, String viewId)
      {
      ..
      context.setViewRoot(result);
      ...
      if (originalViewRoot != null)

      Unknown macro: { context.setViewRoot(originalViewRoot); }

      ..
      }

      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.

      Attachments

        1. DELTASPIKE-524.patch
          8 kB
          Gerhard Petracek

        Issue Links

          Activity

            People

              gpetracek Gerhard Petracek
              nias Markus Schulz
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: