Monday, March 26, 2007

WebLogic 9.2 - Patch Installation In Headless Environment.

With WebLogic 9.2, you no longer receive patch jar files(i.e. CRXXXXXX_81sp5.jar) from BEA customer support. Smart Update tool(with command line interface) is the only available method to apply patch.
It is not straightforward, However It is possible to install patch on headless servers with no connectivity to BEA support server.

1) Identify machine with display environment which can connect BEA support server - your Desktop or laptop.
Smart Update command line interface can not connect to internet.


2) Start Smart update UI
3) Login with BEA support website credentials.
4) Download required patch.
5) Transfer following files from your laptop to headless server at BEA_HOME/utils/bsu/cache_dir - Create cache_dir if it is not created.
BEA_HOME/utils/bsu/cache_dir/91T2.jar
BEA_HOME/utils/bsu/cache_dir/patch-catalog.xml
6) Create necessary profile - To install patch in default profile skip this step.
Smart Update UI command line interface does not have options to create profile, However it is very easy to do manually.
Create empty directory with name of the profile.
To create "dst2007" profile it just needs to create "dst2007" directory
BEA_HOME/patch_weblogic920/profiles/dst2007
7) Execute following command to install patch in a given profile -With no "-profile" option if defaults to "default" profile.
$cd BEA_HOME/utils/bsu
$./bsu.sh -install -patch_download_dir=cache_dir -prod_dir=$BEA_HOME/weblogic -patchlist=91T2 -profile=dst2007
8) Verify that patch is installed correctly - With no "-profile" option if defaults to "default" profile.
bash-2.03$ ./bsu.sh -view -status=applied -patch_download_dir=cache_dir -prod_dir=/apps/bea/bea-wl-9.2.0.0/weblogic -profile=dst2007


Under The Hood

o WebLogic patch package downloaded from BEA support contains actual patch jar and patch-descriptor.xml

bash-2.03$ jar -tvf 91T2.jar

0 Thu Mar 01 11:30:24 EST 2007 jars/
2496 Thu Mar 01 11:30:24 EST 2007 jars/CR275126_920.jar
389 Thu Mar 01 11:30:24 EST 2007 patch-descriptor.xml


o When patch is installed, Smart update, It
a) extracts CR275126_920.jar into BEA_HOME/patch_weblogic920/patch_jars from 91T2.jar
b) Updates or creates "weblogic_patch.jar" file at
BEA_HOME/patch_weblogic920/profiles/default/sys_manifest_classpath - default profile
or
BEA_HOME/patch_weblogic920/profiles/dst2007/sys_manifest_classpath - custom dst2007 profile

o weblogic_patch.jar is referenced in CLASSPATH environment variable of the startup scripts.

It contains a MANIFEST.MF with reference to actual patch jar file.

$jar -tvf weblogic_patch.jar
75 Fri Mar 16 15:46:46 EDT 2007 META-INF/MANIFEST.MF

MANIFEST.MF
Manifest-Version: 1.0
Class-Path: ../../../patch_jars/CR275126_920.jar