Invalid Message Syntax on EMA Java Posting Consumer
I am using example 341 (Consumer Market Price Off Stream). Using that example, I am able to publish and receive updated from an ATS server. However, when I try with Market Link (MLIP) I get the error below.
Received AckMsg. Item Handle: 1 Closure:com.thomsonreuters.ema.access.OmmConsumerImpl@4dfed437
Item Name: XXX=YYY
Service Name: not set
Ack Id: 1
Nack Code:DeniedBySource
Text: (6)Invalid Message Syntax
We have an Excel using a Reuters plug-in which can update this RIC. Both the Excel and Java are accessing the same ADS server.
There are two relevant lines in the code.
submit(postMsg.postId(1).serviceName(XXX).name(RIC)
and
consumer.registerClient(..serviceName(YYY).name(RIC)
When XXX = MARKETLINK and YYY = IDN_RDF I get the RIC response and then I get the error above on submit().
When XXX = IDN_RDF and YYY = IDN_RDF I get the RIC response and then I get for the submit()
Nack Code: SourceDown
Text: A9: Service is unavailable
When XXX = MARKETLINK and YYY = MARKETLINK I get no RIC response. but "Item State: Open / Suspect / None / 'Request Timeout' and then I get the error 'Invalid Message Syntax' submit().
I have seen questions and answers on this, but with respect to RFA Java, but the solutions do not seem to work.
Edit: Consumer.txt original code from the examples attached. The only different to my example is the credentials, service and RIC.
Best Answer
-
Ok - so you are using the existing example with nothing but service and RIC name changes.
My understanding is that MLIP can only accept UpdateMsgs and not RefreshMsgs, so try
UpdateMsg nestedUpdateMsg = EmaFactory.createUpdateMsg();
instead of RefreshMsg and try posting that instead
Also ensure the fields + field content type you are posting matches what the RIC already contains. You do not need to post every field - you can do a subset of the existing fields if required.
0
Answers
-
MARKETLINK is the service you need to post to and IDN_RDF is the service where you should be able to consume the RIC to confirm your changes are taking effect.
So, use MARKETLINK in your Submit Postmsg call and IDN_RDF for the registerclient
The following means the contribution server is not happy with the format of the data/message you submitted.
Nack Code:DeniedBySource
Text: (6)Invalid Message SyntaxYou would need to share the full code you are using to populate your PostMsg and submit OR you can raise a support ticket if you wish to do this offline.
You can also need to check with your MarketData team that the particular RIC you are posting to is configured to receive the payload you are submitting.
0 -
Thanks for responding so quickly. I have attached the sample. With respect to that last question about the MarketDataTeam, neither them nor our local support teams know the answer.
0 -
Many Many thanks for your quick and helpful response. Your suggestion fixed the problem. Just for completeness (if anyone else has this issue), the line below;
nestedRefreshMsg.payload(nestedFieldList).complete(true);
needed to be replaced with;
nestedUpdateMsg.payload(nestedFieldList);
0
Categories
- All Categories
- 6 AHS
- 39 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
- 60 Workspace SDK
- 9 Element Framework
- 5 Grid
- 13 World-Check Data File
- Yield Book Analytics
- 46 中文论坛