3.2.3. Alterações em JSF

3.2.3.1. Habilitação de Aplicativos para Usar Versões Antigas do JSF

Sumário

Se o seu aplicativo usa uma versão mais antiga do JSF, não será necessária a atualização para a versão JSF 2.0. Ao invés disso, é possível criar um arquivo jboss-deployment-structure.xml para solicitar que o JBoss EAP 6 use o JSF 1.2 ao invés do JSF 2.0 com a implantação do seu aplicativo. Este descritor de implantação específico do JBoss é usado para controlar o carregador de classe e está localizado no diretório META-INF/ ou WEB-INF/ do seu WAR, ou no diretório META-INF/ do seu EAR.

Segue abaixo um exemplo de um arquivo jboss-deployment-structure.xml que adiciona uma dependência para o módulo JSF 1.2 e remove ou previne o carregamento automático do módulo JSF 2.0.
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.0">
    <deployment>
        <dependencies>
            <module name="javax.faces.api" slot="1.2" export="true"/>
            <module name="com.sun.jsf-impl" slot="1.2" export="true"/>
        </dependencies>
    </deployment>
    <sub-deployment name="jboss-seam-booking.war">
        <exclusions>
            <module name="javax.faces.api" slot="main"/>
            <module name="com.sun.jsf-impl" slot="main"/>
        </exclusions>
        <dependencies>
            <module name="javax.faces.api" slot="1.2"/>
            <module name="com.sun.jsf-impl" slot="1.2"/>
        </dependencies>
    </sub-deployment>
</jboss-deployment-structure>