ADF Architecture Practice - JDeveloper Silent Patch

Posted by Torsten Kleiber on October 22, 2014 Tags: Oracle ADF JDeveloper ADF-Architecture Silent-Install Silent-Patch

This article describes how to standardize your JDeveloper Patching as requested in Getting Started - Team, Skills and Development Environments.

It is part of the ADF Architecture Practice Series and describes the patching with examples for windows.

Version 12.1.x

In this version the Oracle OPatch is delivered with the Silent Install 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 Install 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!