Description
We fail to render the head id for this test even though it's specified in the facelet.
Related Spec Issue: https://github.com/jakartaee/faces/issues/1760
As noted by BalcusC's comment, the output mode is controllable, not by the doctype, but by the <facelets-processing> in faces-config.xml.
By default, the facelet processing is the HTML5 output. This means the publicId and systemId should be null as there is no DTD. This is not the case in our code, as we create with doctype using the declaration from the xhtml page. (The facelet in the test uses HTML4, hence publicid and systemid are declared)
Doctype initialization:
https://github.com/apache/myfaces/blob/4.1.x/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/CompilationManager.java#L148
This leads to the HTML5 check to fail when attempting to render the IDs in the head and body elements.
Please review in case anything looks incorrect.