RMS ASNOUT Publisher Adapter Fails and Shipments Created in RMS are not Published to SIM (Doc ID 1441193.1)

Last updated on AUGUST 17, 2016

Applies to:

Oracle Retail Merchandising System - Version 13.2.3 and later
Information in this document applies to any platform.
***Checked for relevance on 10-Nov-2013***

Symptoms


RMS ASNOUT Publishing adapter fails when RMSMFM_SHIPMENT.GETNXT returns with status_code 'H' and empty message.

Error Snippet from the ASNOUT adapter log file:

2012-03-13 04:22:30,247 [Timer-80] DEBUG com.retek.rib.collab.general.OracleObjectPublisherComponentImpl - Stored Proc Signature from rib-<app>-plsql-api.xml {call RMSMFM_SHIPMENT.GETNXT(?,?,?,?,?,?,?,?)}
2012-03-13 04:22:30,248 [Timer-80] DEBUG com.retek.rib.collab.OracleObjectDescriptor - Package name RMSMFM_SHIPMENT
2012-03-13 04:22:30,252 [Timer-80] DEBUG com.retek.rib.collab.OracleObjectDescriptor - Package and RIB_OBJECT owner is: RMS13
2012-03-13 04:22:30,252 [Timer-80] DEBUG com.retek.rib.collab.general.OracleObjectPublisherComponentImpl - Setting schema owner = RMS13
2012-03-13 04:22:30,252 [Timer-80] DEBUG com.retek.rib.collab.general.DefaultAdaptorComponentImpl - additionalParmCount = 0
2012-03-13 04:22:30,252 [Timer-80] DEBUG com.retek.rib.log.timings.TimingsLoggerFactory$WrapperTimingsLogger - Reusing old logger(org.apache.log4j.Logger@7c8a2ae8) with name(rib.pub.timings.ASNOut_pub_1) in thread(Timer-80).
2012-03-13 04:22:30,273 [Timer-80] DEBUG com.retek.rib.log.timings.TimingsLoggerFactory$WrapperTimingsLogger - Reusing old logger(org.apache.log4j.Logger@7c8a2ae8) with name(rib.pub.timings.ASNOut_pub_1) in thread(Timer-80).
2012-03-13 04:22:30,273 [Timer-80] INFO com.retek.rib.collab.general.OracleObjectPublisherComponentImpl - API result: H
2012-03-13 04:22:30,273 [Timer-80] DEBUG com.retek.rib.collab.OracleStructDumper - $Header: /cvs/Integration/RIB/Rib_Support/src/com/retek/rib/collab/OracleStructDumper.java,v 1.10 2009/02/10 04:44:38 dikshih Exp $
2012-03-13 04:22:30,274 [Timer-80] DEBUG com.retek.rib.collab.general.OracleObjectPublisherComponentImpl -
2012-03-13 04:22:30,275 [Timer-80] ERROR com.retek.rib.domain.oo.translate.OracleObjectDynamicXMLBuilder - Error processing message type of pubError returned ( java.lang.RuntimeException: Cannot create XML out of an empty STRUCT.)
java.lang.RuntimeException: Cannot create XML out of an empty STRUCT.
at com.retek.rib.domain.oo.translate.OracleObjectDynamicXMLBuilder.createXML(OracleObjectDynamicXMLBuilder.java:87)
at com.retek.rib.domain.oo.translate.OracleObjectDynamicXMLBuilder.createXML(OracleObjectDynamicXMLBuilder.java:72)
.
.
.
2012-03-13 04:22:30,275 [Timer-80] DEBUG com.retek.rib.collab.JavaPubStatus - $Header: /cvs/Integration/RIB/Rib_Support/src/com/retek/rib/collab/JavaPubStatus.java,v 1.5 2007/11/17 00:27:19 borapra Exp $
2012-03-13 04:22:30,275 [Timer-80] DEBUG com.retek.rib.collab.general.OracleObjectPublisherComponentImpl - Creating XML failedError processing message type of pubError returned from GETNXT: java.lang.RuntimeException: Cannot create XML out of an empty STRUCT.
java.lang.RuntimeException: Cannot create XML out of an empty STRUCT.
at com.retek.rib.domain.oo.translate.OracleObjectDynamicXMLBuilder.createXML(OracleObjectDynamicXMLBuilder.java:87)
at com.retek.rib.domain.oo.translate.OracleObjectDynamicXMLBuilder.createXML(OracleObjectDynamicXMLBuilder.java:72)
.
.
.
2012-03-13 04:22:30,276 [Timer-80] ERROR com.retek.rib.domain.getnext.service.impl.GetNextPublisherCoreServiceImpl - Since the GetNext publisher API stored procedure call returned an error status(E) the adapter is shutting down.
2012-03-13 04:22:30,276 [Timer-80] ERROR com.retek.rib.domain.getnext.service.impl.GetNextPublisherCoreServiceImpl - Unable to publish message to JMS.
com.retek.rib.binding.exception.PublishException: Since the GetNext publisher API stored procedure call returned an error status(E) the adapter is shutting down.



Steps To Recreate:

1. Publish messages using RMSMFM_SHIPMENT.GETNXT for records present in SHIPMENT_PUB_INFO table.
2. Make sure some information is missing in for the shipment so that it publishes status code 'H' (A non fatal error has occurred. Send the current message to hospital and continue processing messages)
3. For example shipments in SHIPMENT_PUB_INFO for which there are no transfers attached (No records in TSFHEAD for these shipments).
4. With this the ASNOUT publisher gets shutdown and will not process the further messages.

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