If you have previously created a specialized OpenSSO WAR, such as an OpenSSO server only, administration console only, Distributed Authentication UI server, or IDP Discovery Service WAR, you can patch it by using the ssopatch utility.
The existing specialized WAR file and the OpenSSO 8.0 update 2 specialized WAR file should already be created.
In the following example, the directory zip-root is the root directory for the unzipped contents of the currently deployed WAR file. The directory /u2 is the root directory for the unzipped contents of the upgraded version that will be deployed.
Create a manifest file for the existing specialized OpenSSO WAR.
Run ssopatch to create the OpenSSO manifest file.
Example:
# cd /u2/opensso/tools/patch # ./ssopatch -o zip-root/opensso/deployable-war/distauth.war --manifest /tmp/OpenSSO.manifest
where opensso.war is an existing OpenSSO WAR file. The ssopatch utility creates a new manifest file named manifest in the /tmp directory.
To allow the WAR file to be patched, copy this new manifest file to the META-INF directory inside the opensso.war file.
Example:
# cd zip-root/opensso/deployable-war # mkdir META-INF # cp /tmp/OpenSSO.manifest META-INF # jar uf distauth.war META-INF/OpenSSO.manifest # rm -rf /tmp/OpenSSO.manifest
Generate a manifest file for the updated specialized WAR file.
Example:
# cd /u2/opensso/tools/patch # ./ssopatch -o /u2/opensso/deployable-war/distauth.war --manifest /tmp/OpenSSO.manifest cd ../../deployable-war # mkdir META-INF # cp /tmp/OpenSSO.manifest META-INF # jar uf distauth.war META-INF/OpenSSO.manifest # rm -rf /tmp/OpenSSO.manifest
Use the ssopatch utility to compare your old and new WAR files.
Example:
# cd /u2/opensso/tools/patch # ./ssopatch -o zip-root/opensso/deployable-war/distauth.war -c /u2/opensso/deployable-war/distauth.war -override
Generate a staging area for the new specialized WAR file.
Example:
# cd /tmp/customized_staging # jar cvf /patched/distauth.war *
Redeploy the /patched/distauth.war file to the web container using the original deploy URI.
Example, /distauth.