Paul Nicolucci created MYFACES-4185:
---------------------------------------

             Summary: MYFACES-4183 causes an issue with getViews
                 Key: MYFACES-4185
                 URL: https://issues.apache.org/jira/browse/MYFACES-4185
             Project: MyFaces Core
          Issue Type: Bug
          Components: JSR-372
    Affects Versions: 2.3.0-beta
            Reporter: Paul Nicolucci
            Assignee: Paul Nicolucci


Since the JSFViewDeclarationLanguageStrategy.java always returns true now :  
https://issues.apache.org/jira/browse/MYFACES-4183

A issue is now found in the JSPViewDeclarationLanguage.getViews:


{code:java}
@Override
    public Stream<String> getViews(FacesContext facesContext, String path, int 
maxDepth, ViewVisitOption... options)
    {
        Stream<String> stream = super.getViews(facesContext, path, maxDepth, 
options);
        stream = stream.filter(f -> _strategy.handles(f));
        if (options != null &&
            Arrays.binarySearch(options, 
ViewVisitOption.RETURN_AS_MINIMAL_IMPLICIT_OUTCOME) >= 0)
        {
            stream = stream.map(f -> _strategy.getMinimalImplicitOutcome(f));
        }
        return stream;
    }
{code}

As you can see from the code above it would be possible to now return views 
here that are not actually handled specifically by the JSP vdl. For instance in 
the FaceletViewDeclarationLanguage we have the following filter in place:


{code:java}
stream = stream.filter(f -> (_strategy.handles(f) && 
                    !FaceletsTemplateMappingUtils.matchTemplate(runtimeConfig, 
f) ) );
{code}

This filter allows us to specify something like the following in the 
faces-config.xml and avoid returning a view from getViews(), however now it 
would be returned incorrectly by the JSP vdl:


{code:java}
    <faces-config-extension>
        <facelets-template-mapping>
            <url-pattern>/templates/*</url-pattern>
        </facelets-template-mapping>
    </faces-config-extension>   
{code}





--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to