Decoded login message has wrong OMMMsg.MsgType
I'm using a RFA Java client to log into a Interactive provider.
On the login request message I send, I explicitly set the message type to REQUEST (4) :
msg.setMsgType(OMMMsg.MsgType.REQUEST);
However, when the message arrives at the provider, after the message is decoded back into OMM from RWF, the message type has switched to OMMMsg.MsgType.STREAMING_REQ (1)
Has anyone any idea on how to trouble shoot this?
Best Answer
-
Hello @Anton.Crona,
As the RFA example StarterConsumer is not exhibiting the issue, the two approaches I see are: comparing the custom consumer and with the Starter Consumer to see how it differs so that it may result in this issue, the other approach is starting with StarterConsumer working code and adding your cusom fucntionality to it, till it does what you require.
Please let us know how this works for you.
0
Answers
-
Hello @Anton.Crona
Have you tried with the latest RFA version(8.1.0.E2) yet?
I have tested RFA version 8.1.0.E2 by running StarterProvider_Interactive and StarterConsumer shipped with RFA package. StarterConsumer set setMsgType(OMMMsg.MsgType.REQUEST) and StarterProvider_Interactive received OMMMsg.MsgType.REQUEST(4) which is the same MsgType as StarterConsumer set.
You can check Msg Type sent by the Consumer and received by the Interactive Provider by enabling RFA trace log. To enable the trace log file, please set ipcTraceFlags = 7, traceMsgTypes =ALL, traceMsgDomains=NORMAL, mountTrace=true and specify logFileName parameter of the RSSL and RSSL_Prov connection node. Then start the applications, the default location of each log file is in the application run directory.
The example RFA trace log of login request message sent by StarterConsumer:
The example RFA trace log of login request message received by StarterProvider_Interactive:
You will see that MsgType of the login request is still MsgType.REQUEST(4). I also modified StarterProvider_Interactive source code to print MsgType of each login request and it showed 4(MsgType.REQUEST).
If the problem still occurs with RFA version 8.1.0.E2, you should review your application source code comparing to StarterConsumer.
Hope this help.
0 -
I assume that the RFA version used by the interactive provider is older than RFA Java 7.2.1.L1. Refer to the RFA Java reference guide, OMMMsg.MsgType.STREAMING_REQ has been deprecated in RFA Java 7.2.1 and it uses OMMMsg.MsgType.REQUEST instead.
Therefore, the RFA version used by the consumer may be newer than the RFA version used by the interactive provider.
Please verify the RFA version used by the interactive provider.
0 -
Hi.
I am using RFA version(8.1.0.E2). Both ADH and Interactive provider are on 8.1.0.E2.
This is not a question of the client sending the wrong message. The client is indeed sending a REQUEST(4), this has been verified. The problem here is that the message, for some reason is not correctly decoded when it arrives from the RFA code into the callback.
I have run the examples provided in the RFA package. These examples does not suffer from this problem. The login message, when I run the example, holds REQUEST (4).
I have turned on the tracing as adviced, the tracing shows that the incoming message is indeed REQUEST (4). However, when the public void processEvent(Event event) method is called in the receiving client session. The message type is STREAMING_REQ(1).
I.e.
msg.getMsgType() == OMMMsg.MsgType.STREAMING_REQ
So for some reason, the bit has switched from what is written in the trace, to what the call back receiver is getting.
Since the code for the message encoding / decoding is not available. I cannot isolate what is causing this.
All I see is that the message received on the callback is wrong.
0
Categories
- All Categories
- 6 AHS
- 37 Alpha
- 161 App Studio
- 4 Block Chain
- 4 Bot Platform
- 16 Connected Risk APIs
- 47 Data Fusion
- 30 Data Model Discovery
- 608 Datastream
- 1.3K DSS
- 577 Eikon COM
- 4.9K Eikon Data APIs
- 7 Electronic Trading
- Generic FIX
- 7 Local Bank Node API
- Trading API
- 2.7K Elektron
- 1.3K EMA
- 236 ETA
- 519 WebSocket API
- 33 FX Venues
- 10 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 20 Messenger Bot
- 2 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 59 Open Calais
- 264 Open PermID
- 39 Entity Search
- 2 Org ID
- PAM
- PAM - Logging
- 8.4K Private Comments
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 20 RDMS
- 1.4K Refinitiv Data Platform
- 367 Refinitiv Data Platform Libraries
- 3 Refinitiv Due Diligence
- LSEG Due Diligence Portal API
- 3 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.1K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 10 World-Check Customer Risk Screener
- 990 World-Check One
- 44 World-Check One Zero Footprint
- 45 Side by Side Integration API
- Test Space
- 3 Thomson One Smart
- 1.2K TR Internal
- Global Hackathon 2015
- 2 Specialists Who Code
- 10 TR Knowledge Graph
- 150 Transactions
- 142 REDI API
- 1.7K TREP APIs
- 4 CAT
- 21 DACS Station
- 117 Open DACS
- 1.1K RFA
- 103 UPA
- 172 TREP Infrastructure
- 224 TRKD
- 886 TRTH
- 5 Velocity Analytics
- 5 Wealth Management Web Services
- 59 Workspace SDK
- 9 Element Framework
- 5 Grid
- 13 World-Check Data File
- Yield Book Analytics
- 46 中文论坛