Sterling OMS

Sterling OMS - an error

androowl 2020. 6. 14. 23:09

Cause

Sterling Order Management and IBM Call Center for Commerce as well as WebSphere Application Server hold different versions of com.ibm.icu classes. In the out-of-the-box 9.3 product, icu4j version 49.1 is shipped, whereas WebSphere Application Server may contain an older version as well.

The error occurs because of incorrect class loader settings in the application server. Once the class loader is set to Parent first, the libraries of WebSphere Application Server would be loaded before the Sterling ones, causing the code to access the older version of icu4j and thus throwing errors like the one above.

Environment

Deployed on WebSphere Application Server.

Resolving The Problem

A valid approach to resolve this problem is to set the classloader of the application to Parent last. This can be done as follows:

In WebSphere's Integrated Solutions Console, go to Servers > Server Types > WebSphere application servers > your_server. Select "Multiple" from the Classloader policy drop-down menu.

Then go to Applications > Application Types > WebSphere enterprise applications > your_application > Class loading policy and upgrade detection Select "Classes loaded with local class loader first (parent last)" from the Class loader order drop-down menu.