How to connect to TREP using EMA

Hi,

The company where i'm working on are using E.T 2.0 application. my user what to get rates just like what they see in ET 2.0 application. After we discus with thomsonereuters representative in my country they suggest you can connect to TREP using EMA.

I have already download this Elektron-SDK1.0.8.java_0.zip, how to start new EMA project? what lib to include to create new java project? and how do i have to manage my project folder structure?

Thanks in advance.

Best Answer

  • geoffrey.laurens

    You can start with:

    • Quick Start - It explains setup and configuration, build and run the consumer example application in EMA package.
    • EMA Consumer Tutorials - It explains how to establish an EMA build environment, develop EMA application to consume data step by step with the example source code.

    For account/server information that your EMA application should connect to, please contact Thomson Reuters account team/representative.

Answers

  • Ok, i will try it first. Thanks Pimchaya.Wongrukun

  • Pimchaya.Wongrukun

    I'm following tutorial EMA Cunsomer, when i try to run "example100__MarketPrice__Streaming.ksh", i got this error. What am i missing? Thanks.

    Mar 08, 2017 4:03:11 PM com.thomsonreuters.ema.access.ConfigErrorTracker log
    INFO: loggerMsg
    ClientName: EmaConfig
    Severity: Info
    Text: reading configuration file [EmaConfig.xml] from [/app/ret/permatabank/Elektron-SDK1.0.8.java/Ema/Src/examples]
    loggerMsgEnd


    Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
    at java.util.ArrayList.rangeCheck(ArrayList.java:635)
    at java.util.ArrayList.get(ArrayList.java:411)
    at com.thomsonreuters.ema.access.ChannelCallbackClient.reactorChannelEventCallback(ChannelCallbackClient.java:366)
    at com.thomsonreuters.upa.valueadd.reactor.Reactor.sendChannelEventCallback(Reactor.java:721)
    at com.thomsonreuters.upa.valueadd.reactor.Reactor.sendAndHandleChannelEventCallback(Reactor.java:730)
    at com.thomsonreuters.upa.valueadd.reactor.Reactor.processChannelUp(Reactor.java:2137)
    at com.thomsonreuters.upa.valueadd.reactor.Reactor.processWorkerEvent(Reactor.java:1980)
    at com.thomsonreuters.upa.valueadd.reactor.Reactor.dispatchChannel(Reactor.java:1403)
    at com.thomsonreuters.upa.valueadd.reactor.ReactorChannel.dispatch(ReactorChannel.java:426)
    at com.thomsonreuters.ema.access.OmmBaseImpl.rsslReactorDispatchLoop(OmmBaseImpl.java:1002)
    at com.thomsonreuters.ema.access.OmmBaseImpl.handleLoginReqTimeout(OmmBaseImpl.java:878)
    at com.thomsonreuters.ema.access.OmmConsumerImpl.handleAdminDomains(OmmConsumerImpl.java:359)
    at com.thomsonreuters.ema.access.OmmBaseImpl.initialize(OmmBaseImpl.java:226)
    at com.thomsonreuters.ema.access.OmmConsumerImpl.<init>(OmmConsumerImpl.java:33)
    at com.thomsonreuters.ema.access.EmaFactory.createOmmConsumer(EmaFactory.java:158)
    at com.thomsonreuters.ema.examples.training.consumer.series100.example100__MarketPrice__Streaming.Consumer.main(Consumer.java:57)

  • attached consumer code

  • geoffrey.laurens

    Could you attach EmaConfig.xml which is in /app/ret/permatabank/Elektron-SDK1.0.8.java/Ema/Src/examples?

  • geoffrey.laurens

    I can reproduce the problem by connecting to TREP which does
    not provide component version. After EMA connects to TREP, it tries to get TREP
    component version. If it fails, the exception is thrown.

    According to EMA README, it requires TREP 2.4 or higher.
    Hence, your TREP should be upgraded or you should connect to another TREP which
    version is 2.4 or higher.

  • Should i download lower version of EMA lib?

  • Hello @geoffrey.laurens
    No. All EMA versions require TREP 2.4 or higher. I have checked TREP product and found that TREP2.4 has been end of life(no longer supported) as well. Hence, you should upgrade your TREP to version 2.5 or higher.

  • I already ask thomsonereuters representative in my country about the TREP version, he said that my company using TREP 2.4. It means, i even can't downgrade the EMA library to lower version? If that so, then i will discuss it first with them...

  • Hello geoffrey.laurens

    You should upgrade TREP as it has been end of life and no longer support when the problem occurs with it. Please discuss with

    thomsonreuters representative for new TREP version that you should upgrade to.

  • Hi,

    If documentation(README) said this that it means no problem right if i am using this downloaded EMA api to connect to TREP 2.4?

    ---------------------------------------------------------
    Enterprise Platform for Real-Time - RSSL/RWF connections
    ---------------------------------------------------------
    - ADS 2.4 or higher
    - ADH 2.4 or higher

    Thanks.

  • geoffrey.laurens

    Yes. I can use EMA to connect to TREP 2.4 and get data. EMA can get ADS version and data:

    Mar 13, 2017 10:40:48 AM com.thomsonreuters.ema.access.ChannelCallbackClient reactorChannelEventCallback
    INFO: loggerMsg
    ClientName: ChannelCallbackClient
    Severity: Info
    Text: Received ChannelUp event on channel Channel_1
    Instance Name Consumer_1_1
    Component Version ads2.4.0.L1.solaris.rrg 32-bit
    loggerMsgEnd


    RefreshMsg
    streamId="5"
    domain="MarketPrice Domain"
    solicited
    RefreshComplete
    state="Open / Ok / None / 'All is well'"
    itemGroup="00 01"
    permissionData="03 0f d7 65 62 c0"
    name="TRI.N"
    serviceId="4055"
    serviceName="API_BOMBAY_RDF"
    Payload dataType="FieldList"
    FieldList FieldListNum="79" DictionaryId="1"
    FieldEntry fid="1" name="PROD_PERM" dataType="UInt" value="6562"
    FieldEntry fid="2" name="RDNDISPLAY" dataType="UInt" value="64"
    FieldEntry fid="3" name="DSPLY_NAME" dataType="Rmtes" value="THOMSON REUTERS"
    FieldEntry fid="4" name="RDN_EXCHID" dataType="Enum" value="2"
    FieldEntry fid="6" name="TRDPRC_1" dataType="Real" value="43.19"
    FieldEntry fid="7" name="TRDPRC_2" dataType="Real" value="43.19"

    You can check ADS version by running adsmon on ADS machine. Then, select "Process Statistics", the releaseVersion which EMA get is shown:

    image

    However, if ADS version is lower than 2.4 which EMA does not support.

    "Process Statistics" of ADS does not have the releaseVersion:

    image

  • Sorry Pimchaya.Wongrukun,

    I just get an update from thomsonereuters representative in my country, he said that my company are using TREP version 2.2. So i can't test this example. He said they will upgrade TREP to 2.6. Sorry for the mistake. Thanks by the way.