This blog entry describes an unsupported process for overwriting the version of Mojarra that comes bundled in WLS 12.1.2 and beyond with an arbitrary version (from groupId org.glassfish artifactId javax.faces).

 

Sometimes it is necessary to upgrade the version of Mojarra that comes bundled in WebLogic Server with a different version, either newer or older.  One such usage: the Mojarra team at Oracle uses this process to ensure the in-container tests for WLS use the just-built Mojarra during continuous integration.  To support this, a profile is added to the top level pom.xml for the automated tests.  Though the primary purpose of this profile is to aid our own continuous integration builds, the profile can also be used for general purpose WLS instrumentation.

       
            
  1. You        may check out the        entire Mojarra source tree or just grab the top level        pom for the source line you require.

                    
  2.          
  3. Invoke the package goal, being careful to use the non-recursive mvn invocation.       

             

    mvn -N -Djsf.version=<version> -Dintegration.container.home=<MW_HOME> -Phudson-wls-prepare package

             

    This will cause the maven         artifact org.glassfish:javax.faces:<version> to be pulled from the local         maven repository (downloading if necessary), and applied on top         of whatever version of Mojarra is in the WLS installation         at MW_HOME.  Note that MW_HOME must be         the value as specified in the README.txt in the WLS installation         zip.

              
  4.        
 

This approach is entirely unsupported by Oracle and is only provided for testing purposes.  Instructions for reverting your WLS installation to the previous version are outside the scope of this blog entry.  The recommended practice is to re-install WLS.