Promotion Price Change without an End Date is not Processed by SIM (Doc ID 2221423.1)

Last updated on JANUARY 30, 2017

Applies to:

Oracle Retail Store Inventory Management - Version 14.1.1 and later
Information in this document applies to any platform.

Symptoms

In Store Inventory Management (SIM) application, find that, when a Promotion price change is created for an item in Retail Price Management (RPM) application, without an end date, the incoming ProPrcChg message fails in SIM. The following error is observed in sim.log file:

Error:
ERROR-2319 User: [RIB_INJECTOR] Time: 1/5/17 12:06 PM Type: SimServerException Message: Error staging message! [Inbound: true, MessageType: MultiBuyPromoCre, BusinessId: 35004] Root Cause: null
java.lang.NullPointerException
at oracle.retail.sim.intrib.mapper.PromotionDescMapper.mapItemLocSimpleRetail(Unknown Source)
at oracle.retail.sim.intrib.mapper.PromotionDescMapper.mapToDEO(Unknown Source)
at oracle.retail.sim.intrib.mapper.PromotionDescMapper.mapToDEO(Unknown Source)
at oracle.retail.sim.server.integration.SimMessageMapperFactory.mapToDEO(Unknown Source)
at oracle.retail.sim.service.mps.SimMessageCommand.convertPayloadToDeo(Unknown Source)
at oracle.retail.sim.service.mps.SimMessageStageCommand.doExecute(Unknown Source)
at oracle.retail.sim.common.core.Command.execute(Unknown Source)
at oracle.retail.sim.service.mps.MpsServerServices.stageSimMessage(Unknown Source)
at oracle.retail.sim.intrib.core.SimMessageRibInjector.inject(Unknown Source)
at oracle.retail.sim.intrib.core.SimMessageRibInjector.inject(Unknown Source)
at com.retek.rib.binding.injector.impl.ApplicationMessageInjectorImpl.inject(ApplicationMessageInjectorImpl.java:103)
at com.retek.rib.binding.injector.impl.ApplicationMessageInjectorEjb.inject(ApplicationMessageInjectorEjb.java:66)
at com.retek.rib.binding.injector.impl.ApplicationMessageInjector_dug2c9_EOImpl.__WL_invoke(Unknown Source)
at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
at com.retek.rib.binding.injector.impl.ApplicationMessageInjector_dug2c9_EOImpl.inject(Unknown Source)
at com.retek.rib.binding.injector.impl.ApplicationMessageInjector_dug2c9_EOImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:667)
at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:522)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:518)
at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)

Steps to recreate:

1. Create a promotion price change for an item in RPM
2. Ensure that no end date is provided - Also note that RPM allows for creation of such price changes
3. Note that the message does not flow to SIM
4. Check sim.log file and note the above error
5. Create another promotion price change for the same (or different) item with end date and note that that message flows to SIM without any issues



Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms