Volodymyr Siedlecki created MYFACES-4484:
--------------------------------------------

             Summary: TCK: Spec1553IT: Fix jakarta.faces.composite namespace 
handling
                 Key: MYFACES-4484
                 URL: https://issues.apache.org/jira/browse/MYFACES-4484
             Project: MyFaces Core
          Issue Type: Bug
    Affects Versions: 4.0.0-RC1
            Reporter: Volodymyr Siedlecki


TCK Spec1553IT Test Fails here: 
[https://github.com/jakartaee/faces/blob/4.0.1/tck/faces40/namespaces/src/test/java/ee/jakarta/tck/faces/test/servlet50/namespaces/Spec1553IT.java#L101]

xhtml Code:

[https://github.com/jakartaee/faces/blob/4.0.1/tck/faces40/namespaces/src/main/webapp/spec1553IT.xhtml]

xmlns:cc_jakarta="jakarta.faces.composite/components"
...
<div id="cc_jakarta"><cc_jakarta:component value="value" /></div>

The issue is within 
[CompositeResourceLibrary|https://github.com/apache/myfaces/blob/89c747e85615e3f33265e664c8361789f38ea7db/impl/src/main/java/org/apache/myfaces/view/facelets/tag/composite/CompositeResourceLibrary.java].
 Each namespace, expect the current jakarta one, has a ending slash:
{code:java}
public final static String NAMESPACE_PREFIX = "jakarta.faces.composite";
public final static String JCP_NAMESPACE_PREFIX = 
"http://xmlns.jcp.org/jsf/composite/";;
public final static String SUN_NAMESPACE_PREFIX = 
"http://java.sun.com/jsf/composite/";{code}
This difference affects how the substring call occurs: 
[https://github.com/apache/myfaces/blob/89c747e85615e3f33265e664c8361789f38ea7db/impl/src/main/java/org/apache/myfaces/view/facelets/tag/composite/CompositeResourceLibrary.java#L215]

With the old namespaces, "components" would be returned. But now since 
jakarta.faces.composite is removed, the libraryName is "/components". This 
leading slash creates problems when creating/looking up resource.



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

Reply via email to