[ 
https://issues.apache.org/jira/browse/MYFACES-4711?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17927500#comment-17927500
 ] 

Milo van der Zee commented on MYFACES-4711:
-------------------------------------------

I did not create a PR. During my search for how to register a facesServlet I 
noticed this and thought to mention it.

Do you agree with what I write? Then I will create a PR.

> Check with isAssignableFrom with final class
> --------------------------------------------
>
>                 Key: MYFACES-4711
>                 URL: https://issues.apache.org/jira/browse/MYFACES-4711
>             Project: MyFaces Core
>          Issue Type: Bug
>          Components: General
>    Affects Versions: 4.1.0
>            Reporter: Milo van der Zee
>            Priority: Minor
>
>  
> In FacesServletMappingUtils.java there is a function that checks if the 
> servlet is a facesServlet (isFacesServlet).
>  
> {code:java}
> public static boolean isFacesServlet(FacesContext facesContext, String 
> servletClassName)
> {
>     // shortcut to avoid class lookup
>     if (FacesServlet.class.getName().equals(servletClassName))
>     {
>         return true;
>     }
>     Class servletClass = ClassUtils.simpleClassForName(servletClassName, 
> false);
>     if (servletClass != null)
>     {
>         MyfacesConfig config = MyfacesConfig.getCurrentInstance(facesContext);
>         
>         return FacesServlet.class.isAssignableFrom(servletClass)
>                 || DelegatedFacesServlet.class.isAssignableFrom(servletClass)
>                 || 
> servletClass.getName().equals(config.getDelegateFacesServlet());
>     }
>     return false;
> }
>  {code}
>  
>  
> The `FacesServlet.class.isAssignableFrom(servletClass)`check is not correct 
> here:
>  - FacesServlet is final and so checking for extends is useless
>  - FacesServlet.class.getName().equals(servletClassName) already does the 
> check



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to