TRINIDAD-2068 - Trinidad's faces-config.xml should have metadata-complete=true
diff --git a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/GenerateFacesConfigMojo.java b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/GenerateFacesConfigMojo.java
index 5d57637..925b41e 100644
--- a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/GenerateFacesConfigMojo.java
+++ b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/GenerateFacesConfigMojo.java
@@ -165,6 +165,7 @@
Result mergedResult = new StreamResult(resultStream);
URL xslURL;
+ boolean isJsf2 = false;
JsfVersion usedVersion = JsfVersion.getVersion(jsfVersion);
if (usedVersion == JsfVersion.JSF_1_2)
{
@@ -173,6 +174,7 @@
else if (usedVersion == JsfVersion.JSF_2_0)
{
xslURL = getClass().getResource("resources/transform20.xsl");
+ isJsf2 = true;
}
else
{
@@ -188,6 +190,11 @@
removeRenderers ? "true" : "false");
transformer.setParameter("converterPackageContains", getParameter(converterPackageContains, packageContains));
transformer.setParameter("validatorPackageContains", getParameter(validatorPackageContains, packageContains));
+
+ if (isJsf2 && metadataComplete)
+ {
+ transformer.setParameter("metadataComplete", "true");
+ }
transformer.transform(mergedSource, mergedResult);
resultStream.close();
@@ -327,4 +334,9 @@
* @parameter
*/
private String jsfVersion;
+
+ /**
+ * @parameter
+ */
+ private boolean metadataComplete;
}
diff --git a/maven-faces-plugin/src/main/resources/org/apache/myfaces/trinidadbuild/plugin/faces/resources/transform20.xsl b/maven-faces-plugin/src/main/resources/org/apache/myfaces/trinidadbuild/plugin/faces/resources/transform20.xsl
index a38ba73..f1dcb61 100644
--- a/maven-faces-plugin/src/main/resources/org/apache/myfaces/trinidadbuild/plugin/faces/resources/transform20.xsl
+++ b/maven-faces-plugin/src/main/resources/org/apache/myfaces/trinidadbuild/plugin/faces/resources/transform20.xsl
@@ -35,6 +35,7 @@
<xsl:param name="validatorPackageContains" />
<xsl:param name="typePrefix" />
<xsl:param name="removeRenderers" />
+ <xsl:param name="metadataComplete" />
@@ -76,6 +77,10 @@
<xsl:copy-of select="exsl:node-set($mfp)//namespace::*"/>
<xsl:copy-of select="exsl:node-set($mafp)//namespace::*"/>
<xsl:attribute name="xsi:schemaLocation">http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd</xsl:attribute>
+ <xsl:if test="$metadataComplete">
+ <xsl:attribute name="metadata-complete">true</xsl:attribute>
+ </xsl:if>
+
<xsl:attribute name="version">2.0</xsl:attribute>
<xsl:apply-templates select="javaee:name" />
<xsl:apply-templates select="javaee:ordering" />