How to Overwrite The Version of Mojarra in WLS 12.1.2 and Beyond Blog
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.
You may check out the entire Mojarra source tree or just grab the top level pom for the source line you require.
JSF 2.1.x code line https://svn.java.net/svn/mojarra~svn/branches/MOJARRA_2_1X_ROLLING/test/pom.xml
JSF 2.2.x code line https://svn.java.net/svn/mojarra~svn/branches/MOJARRA_2_2X_ROLLING/test/pom.xml
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 atMW_HOME
. Note thatMW_HOME
must be the value as specified in the README.txt in the WLS installation zip.
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.