Release Notes for Oracle Insurance Gateway Patch 4.25.1.0.5

This document contains the release notes for Oracle Insurance Gateway Patch 4.25.1.0.5.

Version compatibility: Oracle Insurance Gateway Release 4.25.1.x is only compatible with other Oracle Health Insurance applications release version 4.25.1.x unless explicitly stated otherwise.
As per the Service Description, you are obligated to request a service upgrade within 90 days of this release being generally available (GA). In line with the Oracle Cloud Services Pillar document, Section 4.2.2 End of Life, this release will be EOL in 12 months.

Enhancements

No enhancements.

Additional Upgrade Steps

Pre-Upgrade Phase

1) OHI Agent upgrade

  1. Upgrade OHI Agent: Refer to Downloading and Running Oracle Health Insurance Agent for steps to perform the Agent upgrade.

Configuration Properties

This section intentionally left blank.

Web Services

This section intentionally left blank.

Data Conversion

This section intentionally left blank.

Dynamic Logic

This section intentionally left blank.

UI Changes

This section intentionally left blank.

Breaking Changes

This section intentionally left blank.

Access Restrictions

This section intentionally left blank.

Bug Fixes

BugDB SR Internal Summary

38898879

4-0001899859

OIG-4898

Change in String.value behavior in dynamic logic after Java 11 and Groovy 4 upgrade

Description:

In 4.23.2 release, Java was upgraded from 8 to 11, and in 4.25.1 release, Groovy was upgraded from 3 to 4. After this upgrade, accessing .value on a String object in dynamic logic returns the internal byte array instead of character array. This is caused by a change in Java’s internal String representation and Groovy’s lenient access to private members.

Assuming str is a variable of Java type String:

In 4.23.1

str = "Hello"
str evaluates to "Hello"
str.value evaluates to "Hello"

In 4.25.1

str = "Hello"
str.value evaluates to a byte array

Resolution:

Accessing private members of String (such as .value) is not a supported practice and is no longer allowed starting from 4.26.1. Dynamic logic must be remediated to stop relying on .value and instead use the String directly. As a temporary compatibility measure, access to the .value property on String is intercepted and a character array that backs the string value is returned (instead of the internal byte array), effectively mimicking the behavior of 4.23.1. Each intercepted access logs an error message in the application log to help track and remediate affected dynamic logic.

Example Log

ERROR com.oracle.healthinsurance.support.dynamiclogic.internal.components.ValuePropertyInterceptorCustomizer - DEPRECATED String.value intercepted at: ohi.dynamiclogic.test.TEST.groovy:12. Please change your dynamic logic.

To support the interception, the bytecode of existing dynamic logic is reset during the upgrade. This reset causes the application start-up time to be slightly longer on the first startup after the upgrade, as the dynamic logic are recompiled at startup time. Future application restarts do not recompile this bytecode, so subsequent startups are faster.

38832618

4-0001730662

OIG-4866

HICAPS/healthpoint requests are not being processed by the agent

Description:

The OHI Agent is unable to log on to HICAPS/HealthPoint devices and is failing to process requests.

Resolution:

OHI Agent is now able to log on to HICAPS/HealthPoint devices and processing requests successfully.

Issues that were backported in previous Release / Patch

No backports.