Contributor does not work
I have downloaded the Contributor example and followed the tutorial to the letter but don't seem to be able to create an OmmConsumer. When I run it, I get the following output:
Contributing to Refinitiv Contributions Channel
Starting encrypted connection...
May 17, 2022 4:32:09 PM com.refinitiv.ema.access.ChannelCallbackClient reactorChannelEventCallback
WARNING: loggerMsg
ClientName: ChannelCallbackClient
Severity: Warning
Text: Received ChannelDownReconnecting event on channel Channel_1
RsslReactor @1ef6d34c
RsslChannel @1ecee32c
Error Id 0
Internal sysError 0
Error Location Reactor.processWorkerEvent
Error text Error initializing channel: errorId=-1 text=General SSLEngine problem
loggerMsgEnd
I have set the RCC_HOST_NAME to contrib-ws1-emea1.uat.platform.refinitiv.com and the port to 443 and have created the keystore as specified.
Can anyone give me any ideas as to what might be wrong?
Thanks!
Best Answer
-
According to the error message, it could be a certificate issue.
If you are using EMA Java 3.5.1.L1 or above, the application doesn't need to specify a key store file in the code.
Both ETA Java and EMA Java 3.5.1.L1 Issues Resolved
- [RTSDK-3866] - RTSDKJ Client Side Encryption: Set default Certificate Authority keystore location in Java so a jks file isn't requiredYou can modify the code, as shown below.
OmmConsumer consumer = EmaFactory.createOmmConsumer(EmaFactory.createOmmConsumerConfig());
//.tunnelingKeyStoreFile("KEYSTORE_FILE_NAME")
//.tunnelingKeyStorePasswd("KEYSTORE_PASSWORD"));Moreover, this endpoint (contrib-ws1-emea1.uat.platform.refinitiv.com) is for WebSocket connections. EMA supports WebSocket connections but you need to specify it via the EncryptedProtocolType configuration, as shown below.
<Channel>
<Name value="Channel_1"/>
<ChannelType value="ChannelType::RSSL_ENCRYPTED"/>
<!-- CompressionType is optional: defaulted to None -->
<!-- possible values: None, ZLib, LZ4 -->
<CompressionType value="CompressionType::None"/>
<GuaranteedOutputBuffers value="5000"/>
<!-- ConnectionPingTimeout is optional: defaulted to 30000 -->
<ConnectionPingTimeout value="30000"/>
<EncryptedProtocolType value="EncryptedProtocolType::RSSL_WEBSOCKET"/>
<!-- TcpNodelay is optional: defaulted to 1 -->
<!-- possible values: 1 (tcp_nodelay option set), 0 (tcp_nodelay not set) -->
<TcpNodelay value="1"/>
<Host value="contrib-ws1-emea1.uat.platform.refinitiv.com"/>
<Port value="443"/>
</Channel>Otherwise, if you would like to use the socket connection, you need to use this endpoint contrib1-emea1.uat.platform.refinitiv.com instead.
<Channel>
<Name value="Channel_1"/>
<ChannelType value="ChannelType::RSSL_ENCRYPTED"/>
<!-- CompressionType is optional: defaulted to None -->
<!-- possible values: None, ZLib, LZ4 -->
<CompressionType value="CompressionType::None"/>
<GuaranteedOutputBuffers value="5000"/>
<!-- ConnectionPingTimeout is optional: defaulted to 30000 -->
<ConnectionPingTimeout value="30000"/>
<!-- TcpNodelay is optional: defaulted to 1 -->
<!-- possible values: 1 (tcp_nodelay option set), 0 (tcp_nodelay not set) -->
<TcpNodelay value="1"/>
<Host value="contrib1-emea1.uat.platform.refinitiv.com"/>
<Port value="443"/>
</Channel>0
Answers
-
Hello @JasonS
It seems the API cannot establish the connection from your application machine to the RCC host. Can you connect to other endpoints? Please give us more detail about your application environment.
- Are you using RTSDK Java or C/C++ edition?
- The version of RTSDK
- The OS and compiler information
If you are using EMA C++, please enable the API tracing log when the problem occurs with the XmlTraceToFile parameter in the EmaConfig.xml file
<Consumer>
<Name value="Consumer_1"/>
...
<XmlTraceToFile value="1"/>
</Consumer>If you are using EMA Java, you can enable the API tracing log when the problem occurs with the following steps:
Firstly, set the XmlTraceToStdout parameter in the EmaConfig.xml file
<Consumer>
<Name value="Consumer_1"/>
....
<XmlTraceToStdout value="1"/>
</Consumer>Next, create a file named "logging.properties" with the following content:
.level=FINEST
handlers=java.util.logging.FileHandler, java.util.logging.ConsoleHandler
java.util.logging.ConsoleHandler.level=FINEST
java.util.logging.ConsoleHandler.formatter=java.util.logging.SimpleFormatter
java.util.logging.FileHandler.level=FINEST
java.util.logging.FileHandler.pattern=./emaj.log <-- Update file path to match your env
java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter
# Format timestamp as date/time with millisecond
java.util.logging.SimpleFormatter.format=%1$tY-%1$tm-%1$td %1$tH:%1$tM:%1$tS.%1$tL %4$-7s %2$s %n%5$sFinally, run the application with the following JVM argument.
-Djava.util.logging.config.file=<your paht>/logging.properties
0
Categories
- All Categories
- 3 Polls
- 6 AHS
- 36 Alpha
- 166 App Studio
- 6 Block Chain
- 4 Bot Platform
- 18 Connected Risk APIs
- 47 Data Fusion
- 34 Data Model Discovery
- 684 Datastream
- 1.4K DSS
- 615 Eikon COM
- 5.2K Eikon Data APIs
- 10 Electronic Trading
- Generic FIX
- 7 Local Bank Node API
- 3 Trading API
- 2.9K Elektron
- 1.4K EMA
- 249 ETA
- 554 WebSocket API
- 37 FX Venues
- 14 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 23 Messenger Bot
- 3 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 60 Open Calais
- 275 Open PermID
- 44 Entity Search
- 2 Org ID
- 1 PAM
- PAM - Logging
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 22 RDMS
- 1.9K Refinitiv Data Platform
- 643 Refinitiv Data Platform Libraries
- 4 LSEG Due Diligence
- LSEG Due Diligence Portal API
- 4 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.2K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 12 World-Check Customer Risk Screener
- 1K World-Check One
- 46 World-Check One Zero Footprint
- 45 Side by Side Integration API
- 2 Test Space
- 3 Thomson One Smart
- 10 TR Knowledge Graph
- 151 Transactions
- 143 REDI API
- 1.8K TREP APIs
- 4 CAT
- 26 DACS Station
- 121 Open DACS
- 1.1K RFA
- 104 UPA
- 192 TREP Infrastructure
- 228 TRKD
- 915 TRTH
- 5 Velocity Analytics
- 9 Wealth Management Web Services
- 90 Workspace SDK
- 11 Element Framework
- 5 Grid
- 18 World-Check Data File
- 1 Yield Book Analytics
- 46 中文论坛