question

Upvotes
Accepted
29 4 7 13

EMA C++ / Java: ToString error for 0#T7E:

The EMA toString method will report errors for the following RICs:

0#T7E:

0#OCB:

0#TIE:


Questions:

1. Is this by design? Looks like the root cause is from decoder?

2. Is there a 'toString' like method existing in EMA can cope with such case, that can output the message without error, then we may log the message received in log file.

=========================

C++:

c1.jpg

Java:

j1.jpg

1

ema-apijavac++
c1.jpg (339.6 KiB)
j1.jpg (343.1 KiB)
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

The test case is based on Consumer 100 example, just modified the RIC.

Actually the https://github.com/Refinitiv-API-Samples/Article.EMA.Java.ChainExpander example works for those RICs

Upvotes
Accepted
47.4k 111 44 60

@Frederic

I found invalid characters when subscribing to those RICs via Eikon Quote.

1638853632761.png

You may need to contact the Eikon content support team directly via MyRefinitiv to verify the content.


1638853632761.png (11.7 KiB)
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Many thanks @Jirapongse . An interesting issue :) maybe content problem, and whether the toString method (both C++ and Java ESDK) should handle this scenario. Normally as developer, the toString method will be expected as error free method.
Upvotes
15.2k 28 8 12

Hello @Frederic

What is the EMA/RTSDK version that encounters the issue? I have tested with RTSDK 2.0.3.L2 but I got "The record could not be found" error message from my internal service which means my service does not have 0#T7E, 0#OCB, and 0#TIE RICs.

Could you please clarify the second question? You can see more detail on how to log the EMA API and RSSL trace messages on the "Logger Configuration" and "EMA Java Logging" sections of the Enterprise Message API (EMA) - Configuration Overview article.

Additionally, if the client is the premium user (aka RDC named user), the client will see the "Contact premium support" button on the RTSDK page (https://developers.refinitiv.com/en/api-catalog/refinitiv-real-time-opnsrc/rt-sdk-cc and https://developers.refinitiv.com/en/api-catalog/refinitiv-real-time-opnsrc/rt-sdk-java), then the client can submit a ticket to the API support team directly.

rtsdk-contact-support.png

Additonally, the client can submit a ticket to the RTSDK development directly via the Real-Time SDK - GitHub issue page.



icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Thanks @wasin.w . The RICs should have colon ':' at the end of the name:

0#T7E:

0#OCB:

0#TIE:

The 2nd question is about do we have a toString method may 'toString' without such decoding error? It's easy to reproduce with the simplest and standard example.

And what's the normal response time for the GitHub issue submitting channel?

Upvotes
15.2k 28 8 12

Hello @Frederic

The EMA API supports the stringification which prints all OMM containers, primitives, and messages to screen in a standardized output format.

print-tostring.png

Example:

System.out.println(refreshMsg);
System.out.println(updateMsg);
System.out.println(statusMsg);

The client can parse each field data based on its data type too. Please check the decode() method of ex360_MP_View/Cons360 example for more detail.

Please note that this Q&A forum and the GitHub issue are community-based support, there is no SLA. However, the Premium user/RDC named user can submit a ticket to the API support team which has a SLA .




print-tostring.png (18.6 KiB)
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Thanks Wasin. I have suggested client to use the decoding methods instead relying on the default toString (and further check is needed)