Erreur lors de l’installation de Oracle SOA Suite 12.2.1.3

L’installation des dernières versions des produits Oracle Fusion Middleware peuvent échouer dans certaines circonstances. Ce problème concerne donc les produits SOA Suite, Service Bus, ODI, etc…

Pendant l’installation de la SOA Suite par exemple, l’erreur suivante est déclenchée lors de la copie des fichiers :

oracle.sysman.oii.oiif.oiifb.OiifbEndIterateException: java.lang.Exception: java.lang.IllegalStateException: The classloader used by the current data handler object is not the same classloader or a parent classloader of the data handler object provided.[[
        at oracle.sysman.oii.oiic.OiicInstallAPISession.doOperation(OiicInstallAPISession.java:465)
        at oracle.sysman.nextgen.impl.NextGenInstallerImpl.execute(NextGenInstallerImpl.java:451)
        at oracle.sysman.nextgen.impl.NextGenInstallerImpl.execute(NextGenInstallerImpl.java:427)
        at oracle.as.install.engine.modules.install.action.AbstractNextGenInstaller.start(AbstractNextGenInstaller.java:215)
        at oracle.as.install.engine.modules.install.action.NextGenAPIInstallManager.launchOUI(NextGenAPIInstallManager.java:104)
        at oracle.as.install.engine.modules.install.InstallModule.launchOUI(InstallModule.java:165)
        at oracle.as.install.engine.modules.install.InstallModule$1.run(InstallModule.java:262)
Caused by: java.lang.Exception: java.lang.IllegalStateException: The classloader used by the current data handler object is not the same classloader or a parent classloader of the data handler object provided.
        at oracle.sysman.oii.oiic.OiicInstallAPISession$OiicActionsThread.run(OiicInstallAPISession.java:936)
Caused by: java.lang.IllegalStateException: The classloader used by the current data handler object is not the same classloader or a parent classloader of the data handler object provided.
        at com.oracle.cie.common.dao.CachingDataHandler.validateClassLoaders(CachingDataHandler.java:381)
        at com.oracle.cie.common.dao.CachingDataHandler.setComplexValue(CachingDataHandler.java:215)
        at com.oracle.cie.common.dao.DataHandlerHelper.setWrapperList(DataHandlerHelper.java:88)
        at com.oracle.cie.gdr.dao.rgy.DistributionInfo.setProductFamilies(DistributionInfo.java:56)
        at com.oracle.cie.gdr.installation.CommonInstaller.updateRegistry(CommonInstaller.java:1000)
        at com.oracle.cie.gdr.installation.CommonInstaller.updateRegistry(CommonInstaller.java:945)
        at com.oracle.cie.gdr.installation.CommonInstaller.updateRegistry(CommonInstaller.java:932)
        at com.oracle.cie.gdr.installation.CommonInstaller.startInstall(CommonInstaller.java:422)
        at oracle.sysman.oii.oiic.OiicNextGenInstallAPISession$OiicNextGenAPISelCompsInstall.doOperation(OiicNextGenInstallAPISession.java:416)
        at oracle.sysman.oii.oiif.oiifb.OiifbCondIterator.iterate(OiifbCondIterator.java:161)
        at oracle.sysman.oii.oiic.OiicInstallAPISession.doInstallAction(OiicInstallAPISession.java:653)
        at oracle.sysman.oii.oiic.OiicInstallAPISession.access$000(OiicInstallAPISession.java:93)
        at oracle.sysman.oii.oiic.OiicInstallAPISession$OiicActionsThread.run(OiicInstallAPISession.java:927)

]]

Le problème est dû à la séquences des opérations menées pendant l’installation :

  • Installation de WebLogic Server 12.2.1.3.0
  • Installation de OPatch 13.9.4.0
  • Installation du dernier PSU
  • Installation de WebLogic Infrastructure 12.2.1.3.0
  • Installation de la SOA Suite

L’origine du problème est l’installation de OPatch 13.9.4, manifestement il met la panique dans les classloaders.

Pour corriger le problème il faut modifier la séquence des opérations ainsi :

  • Installation de WebLogic Server 12.2.1.3.0
  • Installation de WebLogic Infrastructure 12.2.1.3.0
  • Installation de la SOA Suite
  • Installation de OPatch 13.9.4.0
  • Installation du dernier PSU

Plus de détails sont disponibles dans la note du support Oracle 2434657.1