Null Payload in OmmMsg

Hi Team,
We are migrating from RFA 7.6 to 8.1. We recently found a scenario in which Payload from OmmMsg was null, causing NullPointerException. Below is the snippet that caused the issue. From which we already verify that event and msg are not null.
byte[] data = ommItemEvent.getMsg().getPayload().getBytes()
Also this scenario was never previously observed where payload can be null.
So I want to know that in which scenario we can get null payload like any event, connection issue (which I don't see on logs), or any issue on Reuters side.
Thanks.
Best Answer
-
You can receive message with no payload - e.g. a StatusMsg would have no payload.
Are you trying to extract a Payload from a StatusMsg?
As demonstrated in many of the RFA examples you should always check if a payload is blank before attempting to access the data e.g.
if ( respMsg.getPayload().isBlank() )
0
Answers
-
I am getting this issue after all basic checks like Response MsgType is OMMMsg.MsgType.REFRESH_RESP & RDMMsgTypes is RDMMsgTypes.MARKET_PRICE. I have never seen this issue while getting payload from a REFRESH response.
0 -
Are you consuming Refinitiv Elektron data or some internally published data?
Please provide a IPCTrace file for when the above occurs so we can investigate further. For RFA Java you will need to set the ipcTrace Flag in your config for the RSSL connection you are using e.g.
<node name="consConnection">
<map>
<entry key="connectionType" value="RSSL"/>
<entry key="serverList" value="<yourServer>"/>
<entry key="portNumber" value="14002"/>
<entry key="mountTrace" value="true"/>
<entry key="ipcTraceFlags" value="7"/>
<entry key="logFileName" value="rfa.log"/>
</map>
</node>If the problem is not easily recreatable and the trace file ends up being very large, please extract the Response message and corresponding Request message which causes the above exception. You can identify the Request message from service + instrument names. Make a note of the streamID for the Request and find the Response Message with the same StreamID.
0
Categories
- All Categories
- 3 Polls
- 6 AHS
- 36 Alpha
- 166 App Studio
- 6 Block Chain
- 4 Bot Platform
- 18 Connected Risk APIs
- 47 Data Fusion
- 34 Data Model Discovery
- 684 Datastream
- 1.4K DSS
- 615 Eikon COM
- 5.2K Eikon Data APIs
- 10 Electronic Trading
- Generic FIX
- 7 Local Bank Node API
- 3 Trading API
- 2.9K Elektron
- 1.4K EMA
- 250 ETA
- 555 WebSocket API
- 37 FX Venues
- 14 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 23 Messenger Bot
- 3 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 60 Open Calais
- 275 Open PermID
- 44 Entity Search
- 2 Org ID
- 1 PAM
- PAM - Logging
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 22 RDMS
- 1.9K Refinitiv Data Platform
- 643 Refinitiv Data Platform Libraries
- 4 LSEG Due Diligence
- LSEG Due Diligence Portal API
- 4 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.2K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 12 World-Check Customer Risk Screener
- 1K World-Check One
- 46 World-Check One Zero Footprint
- 45 Side by Side Integration API
- 2 Test Space
- 3 Thomson One Smart
- 10 TR Knowledge Graph
- 151 Transactions
- 143 REDI API
- 1.8K TREP APIs
- 4 CAT
- 27 DACS Station
- 121 Open DACS
- 1.1K RFA
- 104 UPA
- 193 TREP Infrastructure
- 228 TRKD
- 915 TRTH
- 5 Velocity Analytics
- 9 Wealth Management Web Services
- 90 Workspace SDK
- 11 Element Framework
- 5 Grid
- 18 World-Check Data File
- 1 Yield Book Analytics
- 46 中文论坛