Document Properties
Kbid
296F34
Last Modified
06-Nov-2020
Added to KB
15-Sep-2020
Public Access
Everyone
Status
Online
Doc Type
Support Articles
Product
ICM 7.10
Related Product

Support Article - Handling the New Dependency of 3rd_oracle Version 19.3.1.0

1 Introduction

JDBC drivers with version 12.2.0.1 and above are affected by (non-public) bug 30964068, see Oracle Support Document 2689134.1 for more details.

We recommend to keep using version 12.1.0.2, until this bug is fixed in the main line drivers. If, for some reason, you are required to use a more recent driver, you can either use JDBC 19.6 and apply the patch for bug 30964068 or request a patch from Oracle that is applicable to the version of the driver you want to use.

ICM 7.10.22.1 references the new oracle JDBC driver 19.6.0.0.0 (ojdbc8.jar, ucp.jar, ons.jar). In this context the Gradle build process looks for 3rd_oracle project version 19.3.1.0 in the Artifact Repository Server. These artifacts are not available in the Artifact Repository Server by default which leads to the following error message during the Gradle build process:

Gradle Build Error
FAILURE: Build failed with an exception.

* What went wrong:
Could not resolve all dependencies for configuration 'appserver+development-cartridges+discoveryserver+init-cartridges+microservices+share+webserver'.
> Could not find com.intershop:3rd_oracle:19.3.1.0.
  Searched in the following locations:
      file:/home/intershop1/.gradle/.localRepo/com.intershop/3rd_oracle/19.3.1.0/ivys/ivy-19.3.1.0.xml
      file:/home/intershop1/.gradle/.localRepo/com.intershop/3rd_oracle/19.3.1.0/jars/3rd_oracle-jar-19.3.1.0.jar
      file:/home/intershop1/.gradle/.localRepo/com.intershop/3rd_oracle/19.3.1.0/jars/ivy-19.3.1.0.xml
      file:/home/intershop1/.gradle/.localRepo/com/intershop/3rd_oracle/19.3.1.0/3rd_oracle-19.3.1.0.pom
      file:/home/intershop1/.gradle/.localRepo/com/intershop/3rd_oracle/19.3.1.0/3rd_oracle-19.3.1.0.jar
      http://localhost:8081/nexus/content/groups/components/com.intershop/3rd_oracle/19.3.1.0/ivys/ivy-19.3.1.0.xml
      http://localhost:8081/nexus/content/groups/components/com.intershop/3rd_oracle/19.3.1.0/jars/3rd_oracle-jar-19.3.1.0.jar
      http://localhost:8081/nexus/content/groups/components/com.intershop/3rd_oracle/19.3.1.0/jars/ivy-19.3.1.0.xml
      http://localhost:8081/nexus/content/groups/components/com/intershop/3rd_oracle/19.3.1.0/3rd_oracle-19.3.1.0.pom
      http://localhost:8081/nexus/content/groups/components/com/intershop/3rd_oracle/19.3.1.0/3rd_oracle-19.3.1.0.jar
  Required by:
      unspecified:unspecified:unspecified > com.intershop.responsive:inspired-b2x:15.0.2

1.1 References

2 Solutions

This behavior can be handled in two different ways.

2.1 Upload the Missing 3rd_oracle Version 19.3.1.0 with New Oracle Drivers

For this approach you have to upload the missing 3rd_oracle version 19.3.1.0 with all new Oracle Drivers (ojdbc8.jar, ucp.jar, ons.jar) to the Artifact Repository Server. To achieve this do the following:

  1. Download the 3rd_oracle project zip (3rd_oracle.zip).
  2. Unzip the 3rd_oracle project in a local directory.
  3. Add a valid distributionUrl to the gradle-wrapper.properties file.
  4. (optional) Download ojdbc8.jar, ucp.jar and ons.jar from https://www.oracle.com/database/technologies/appdev/jdbc-ucp-19c-downloads.html and store the drivers in 3rd_oracle/build/oracleLibs/jars.

    When skipping this step, it is necessary to set the environment for OTN user and password for the gradlew publish task to be able to download the JDBC driver files (see Step 5).

  5. Open a command line in the 3rd_oracle project.
  6. Run the gradlew publish task with all necessary parameters as follows:

    Windows
    gradlew publish -PreleaseURL=<URL for release publishing> -PrepoUserName=<deployment user> -PrepoUserPasswd=<deployment user password> -DOTN_USER=<OTN user name> -DOTN_PASSWD=<OTN user password>
    Linux
    ./gradlew publish -PreleaseURL=<URL for release publishing> -PrepoUserName=<deployment user> -PrepoUserPasswd=<deployment user password> -DOTN_USER=<OTN user name> -DOTN_PASSWD=<OTN user password>

2.2 Keep Using the old 3rd_oracle Project Version 12.1.0.2.0.0

To continue using the old 3rd_oracle project version, just declare the old version in the root project. To achieve this do the following:

  1. Introduce a new version file in the root project, which is considered by the version recommender:

    <root-project>/build.gradle
    versionRecommendation {
    provider {
    // thirdparty.version shouldn't be used anymore
    properties('thirdparty', file('thirdparty.version')) {}
    ...

    Note

    This line needs to be the first in the provider{} block.

  2. Create a file named thirdparty.version with the following content in your root project directory:

    <root-project>/thirdparty.version
    com.intershop:3rd_oracle = 12.1.0.2.0.0

Disclaimer

The information provided in the Knowledge Base may not be applicable to all systems and situations. Intershop Communications will not be liable to any party for any direct or indirect damages resulting from the use of the Customer Support section of the Intershop Corporate Web site, including, without limitation, any lost profits, business interruption, loss of programs or other data on your information handling system.

Customer Support
Knowledge Base
Product Resources
Tickets