This article describes how to standardize your JDeveloper Patching as requested in Planning & Getting Started – Team, Skills and Development Environments. It is part of the ADF Architecture Practice lessons and describes the patching with examples for windows.
Version 12.1.x
In this version the Oracle OPatch is delivered with the silent installation of JDeveloper.
All what you need is the patch file for your platform (e.g. p19591087_121300_Generic.zip for JDEVADF SECURITY PATCH UPDATE 12.1.3.0.0 CPUOCT2014). Unzip this patch file.
Then you call batch file similar to:
set oracle_home=C:\Oracle\JDev121300 pushd [path]\19591087 %oracle_home%\OPatch\opatch apply -silent
Revert the patch is similar, the response should look like
set oracle_home=C:\Oracle\JDev121300 pushd [path]\19591087 %oracle_home%\OPatch\opatch rollback -id 19591087 -silent
In Line 3 you have to enter the patch number, which has to be reverted after -id.
Version 11.1.1.x
In some of this versions Oracle OPatch is not delivered with the silent installation of JDeveloper. Please check if %oracle_home%\oracle_common\OPatch does exist. If not – you can download the latest version of OPatch here. Please select your Platform and Release 11.1.0.0.0 as this correspond to your JDeveloper version. Unzip the downloaded file.
In some versions (at least till 11.1.1.1.5) you need for the first patch a default product.xml file in the right place, as this cannot be created silently. Change the highlighted lines according to your environment:
<?xml version="1.0" encoding="WINDOWS-1252"?> <product> <name value="SA_JDEV"/> <version value="11.1.1.5.0"/> </product>
For older versions of opatch maybe you have to add a response file for opatch, which you can create as described here.
Then you need the patch file for your platform (e.g. p19591065_111170_Generic.zip for JDEVADF SECURITY PATCH UPDATE 11.1.1.7.0 CPUOCT2014). Unzip this patch file.
Then you call batch file similar to:
set oracle_home=C:\Oracle\JDev111170 set java_home=%oracle_home%\jdk160_24 rem opatch_home=[your unzipped OPatch home] set opatch_home=%oracle_home%\oracle_common\OPatch rem workaround for BUG 9613778: OPATCH-STAND-ALONE: ERROR "OUI-67124:INVENTORY CHECK FAILED" ON GERMAN WINDOWS rem set _JAVA_OPTIONS="-Duser.language=en" rem workaround for silent creation of product.xml till at least version 11.1.1.5 rem if not exist %oracle_home%\product.xml copy product.xml %oracle_home%\product.xml /V /Y rem if not exist %mw_home%\jdeveloper\product.xml copy product.xml %mw_home%\jdeveloper\product.xml /V /Y pushd [path]\19591087 rem use switch -ocmrf, if you have an older opatch version, which requires a response file rem use switch -jdk, if you have the downloaded opatch version rem cmd /c %opatch_home%\opatch apply -silent -ocmrf ocm.rsp -jdk %oracle_home%\jdk160_24 %opatch_home%\opatch apply -silent rem Workaround for BUB 9613778: OPATCH-STAND-ALONE: ERROR "OUI-67124:INVENTORY CHECK FAILED" ON GERMAN WINDOWS rem set _JAVA_OPTIONS=
Reverting patches is similar to 12.1.x.
set oracle_home=C:\Oracle\JDev111170 set java_home=%oracle_home%\jdk160_24 rem opatch_home=[your unzipped OPatch home] set opatch_home=%oracle_home%\oracle_common\OPatch pushd [path]\19591087 rem use switch -ocmrf, if you have an older opatch version, which requires a response file rem use switch -jdk, if you have the downloaded opatch version rem cmd /c %opatch_home%\opatch rollback -id 19591087 -silent -ocmrf ocm.rsp -jdk %oracle_home%\jdk160_24 %opatch_home%\opatch rollback -id 19591087 -silent
That's it!