question

Upvotes
Accepted
7 1 0 7

EMA Programatic Configurition

Having below warning. Would like to confirm if I am missing anything to configure.I am using Programatic configurition to connect to MDS.


WARN OmmConsumerImpl [main]: loggerMsg

ClientName: EmaConfig

Severity: Warning

Text: no configuration exists in the config file for consumer dictionary [DictionaryGroup|DictionaryList]. Will use dictionary defaults if not config programmatically.

loggerMsgEnd


#technologyema-api
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.

Hi @vikas.chaudhary ,

Thank you for your participation in the forum. Is the reply below satisfactory in resolving your query?
If so please can you click the 'Accept' text on the left side of the appropriate reply? This will guide all community members who have a similar question.

Thanks,
AHS

Please be informed that a reply has been verified as correct in answering the question, and has been marked as such.

Thanks,
AHS

Upvotes
Accepted
24.7k 54 17 14

Hello @vikas.chaudhary

Thank you for the information. I can replicate the same warning message after I renamed the EmaConfg.xml file and ran the ex421_MP_ProgrammaticCfg example with EMA Java 3.6.0 and EMA Java 3.6.6 The result is shown below:

2022-12-16 14:03:54.999 WARNING com.refinitiv.ema.access.ConfigErrorTracker log 
loggerMsg
    ClientName: EmaConfig
    Severity: Warning
    Text:    no configuration exists in the config file for consumer dictionary [DictionaryGroup|DictionaryList]. Will use dictionary defaults if not config programmatically.
loggerMsgEnd

               

However, when I tested with EMA Java 3.6.7, the message has been changed to the INFO level instead as follows:

2022-12-16 13:54:58.644 INFO    com.refinitiv.ema.access.ConfigErrorTracker log 
loggerMsg
    ClientName: EmaConfig
    Severity: Info
    Text:    no configuration exists in the config file for consumer dictionary [DictionaryGroup|DictionaryList]. Will use dictionary defaults if not config programmatically.
loggerMsgEnd

I do believe that it is related to the following change in the EMA Java 3.6.7 (please see more detail in the CHANGELOG.md file)

EMA Java 3.6.7.L1 Issues Resolved
[RTSDK-6417] - EMA log shows messages that should be "Info" as "Error"

Is version 3.6.7 behavior match your requirement?

About the "Is there any way to check if my dictionary is configured corrected programmatically." question. If you enable the API log in TRACE/FINEST level, the following message is shown.

loggerMsg
    ClientName: DictionaryCallbackClient
    Severity: Trace
    Text:    Successfully loaded local dictionaries: 
   RDMFieldDictionary file named C:\drive_d\Project\APIs\EMA_Code\EMA_Java_207L2_Maven\etc\RDMFieldDictionary
   EnumTypeDef file named C:\drive_d\Project\APIs\EMA_Code\EMA_Java_207L2_Maven\etc\enumtype.def
loggerMsgEnd
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.

Upvotes
24.7k 54 17 14

Hello @vikas.chaudhary

Thank you for contacting us.

Besides this warning message, can the application connect and consume data successfully?

Did your application source code set the DictionaryGroup and its related parameters? You can find the example in the EMA API Consumer example ex421_MP_ProgrammaticCfg (Java) and Con421 (C++).

Additionally, you may check my colleague's answer in this old post too.

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.

Upvotes
7 1 0 7

Application can connect and consume data successfully. Is there any other way to suppress warning provided that programatic Config has all configurition.



innerElementList.add(EmaFactory.createElementEntry().ascii("DictionaryType", "DictionaryType::FileDictionary"));

innerElementList.add(EmaFactory.createElementEntry().ascii("RdmFieldDictionaryFileName", EMA_RDM_DICTIONARY_DEFAULT_PATH));

innerElementList.add(EmaFactory.createElementEntry().ascii("EnumTypeDefFileName", EMA_ENUM_DICTIONARY_DEFAULT_PATH));


innerMap.add(EmaFactory.createMapEntry().keyAscii( getDefaultDictionaryName(), MapEntry.MapAction.ADD, innerElementList));

innerElementList.clear();


elementList.add(EmaFactory.createElementEntry().map( "DictionaryList", innerMap ));

innerMap.clear();


configMap.add(EmaFactory.createMapEntry().keyAscii( "DictionaryGroup", MapEntry.MapAction.ADD, elementList ));

elementList.clear();

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.

Upvotes
24.7k 54 17 14

Hello @vikas.chaudhary

Could you please let me know the version and edition of the EMA API that you are using?

I cannot replicate the same warning message in the EMA Java 3.6.6 L1 (RTSDK 2.0.6 L1) and EMA Java 3.6.7 L3 (RTSDK 2.0.7.L3) versions.

I tested with the ex421_MP_ProgrammaticCfg example, it can connect and consume data without any warning messages.

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.

I am using ema-3.6.0.0.jar and eta-3.6.0.0.jar. Is there any way to check if I dictionary is configured corrected programatically. I am not getting this warning when using EmaConfig.xml.

Upvotes
7 1 0 7

I am using ema-3.6.0.0.jar and eta-3.6.0.0.jar. Is there any way to check if I dictionary is configured corrected programatically. I am not getting this warning when using EmaConfig.xml.

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.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

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