ReutersConfig.txt
Hi,
I have attached my RFA config file. Can I get a sample EMAConfig file corresponding to attached file?
Where to place server IPs and port?
@hanhuitan
Thanks for reaching out to us.
EMA doesn't support the SSL (Source Sink Library) connection.
First, you need to change the Dictionary in Consumer_1 (the default consumer) to Dictionary_2 which loads the dictionary from files.
<DefaultConsumer value="Consumer_1"/> <ConsumerList> <Consumer> <!-- Name is mandatory --> <Name value="Consumer_1"/> <!-- Channel is optional: defaulted to "RSSL_SOCKET + localhost + 14002" --> <!-- Channel or ChannelSet may be specified --> <Channel value="Channel_1"/> <!-- Dictionary is optional: defaulted to "ChannelDictionary" --> <Dictionary value="Dictionary_2"/> <XmlTraceToStdout value="0"/> </Consumer>
Then, specify the location of dictionary files in Dictionary_2.
<Dictionary> <Name value="Dictionary_2"/> <DictionaryType value="DictionaryType::FileDictionary"/> <!-- dictionary names are optional: defaulted to RDMFieldDictionary and enumtype.def --> <RdmFieldDictionaryFileName value="./RDMFieldDictionary"/> <EnumTypeDefFileName value="./enumtype.def"/> </Dictionary>
Consumer_1 uses Channel_1 for the connection. Therefore, specify the Host and Port configurations in Channel_1.
<Channel> <Name value="Channel_1"/> <ChannelType value="ChannelType::RSSL_SOCKET"/> <CompressionType value="CompressionType::None"/> <GuaranteedOutputBuffers value="5000"/> <TcpNodelay value="1"/> <Host value="uat.dbs.com"/> <Port value="14002"/> </Channel>
EMA uses the RSSL connection and the default port of the RSSL connection is 14002.
The EmaConfig.xml file is in the Java\Ema directory.
Finally, specify the username in the code.
OmmConsumerConfig config = EmaFactory.createOmmConsumerConfig(); consumer = EmaFactory.createOmmConsumer(config.username("dbsuat"));
Please feel free to reach out if you have any further questions.
Hi @Jirapongse,
Thanks for the quick response.
I'm trying to run series100.ex100_MP_Streaming.IProvider.java with given EmaConfig and giving me below errors,
com.refinitiv.ema.access.ConfigErrorTracker log
SEVERE: loggerMsg
ClientName: EmaConfig
Severity: Error
Text: Unable to find tagId for WarmStandbyChannelSet
loggerMsgEnd
Text: Unable to find tagId for WarmStandbyServerInfoGroup
Text: Unable to find tagId for WarmStandbyGroup
Can help me understand why is it throwing these errors?
I am unable to replicate these errors when running ex100_MP_Streaming.
The followings are log messages when running the example.
2022-12-02 11:01:25.784 FINEST com.refinitiv.ema.access.OmmServerBaseImpl initialize loggerMsg ClientName: Provider_1_1 Severity: Trace Text: Print out active configuration detail. itemCountHint: 10000 serviceCountHint: 10000 requestTimeout: 15000 dispatchTimeoutApiThread: 500 maxDispatchCountApiThread: 500 maxDispatchCountUserThread: 500 userDispatch: 1 configuredName: Provider_1 instanceName: Provider_1_1 xmlTraceEnable: false defaultConverterServiceId: 1 jsonExpandedEnumFields: false catchUnknownJsonKeys: false catchUnknownJsonFids: true closeChannelFromFailure: true globalConfig.reactorChannelEventPoolLimit: -1 globalConfig.reactorMsgEventPoolLimit: -1 globalConfig.workerEventPoolLimit: -1 globalConfig.tunnelStreamMsgEventPoolLimit: -1 globalConfig.tunnelStreamStatusEventPoolLimit: -1 defaultServiceName: 14002 acceptMessageWithoutAcceptingRequests: false acceptDirMessageWithoutMinFilters: false acceptMessageWithoutBeingLogin: false acceptMessageSameKeyButDiffStream: false acceptMessageThatChangesService: false acceptMessageWithoutQosInRange: false enforceAckIDValidation: false operationModel: 1 directoryAdminControl: 1 dictionaryAdminControl: 1 refreshFirstRequired: true maxFieldDictFragmentSize: 8192 maxEnumTypeFragmentSize: 12800loggerMsgEnd2022-12-02 11:01:26.669 FINEST com.refinitiv.ema.access.OmmServerBaseImpl initialize loggerMsg ClientName: Provider_1_1 Severity: Trace Text: Successfully open Selector.loggerMsgEnd2022-12-02 11:01:26.724 FINEST com.refinitiv.ema.access.OmmServerBaseImpl initialize loggerMsg ClientName: Provider_1_1 Severity: Trace Text: Successfully created Reactor.loggerMsgEnd2022-12-02 11:01:26.867 FINEST com.refinitiv.ema.access.CallbackClient <init> loggerMsg ClientName: ItemCallbackClient Severity: Trace Text: Created ItemCallbackClientloggerMsgEnd2022-12-02 11:01:26.937 FINEST com.refinitiv.ema.access.OmmServerBaseImpl initialize loggerMsg ClientName: Provider_1_1 Severity: Trace Text: Provider bound on port = 14002.loggerMsgEnd
Please enable finest logging level in the API and share all log messages. You can refer to this Learn how to direct EMA Java log to Java Logging API article. Moreover, please share the EMAConfig.xml file used in the example.