question

Upvotes
Accepted
1 0 0 1

Error processing message

Hello, I had an issue whereby I missed a BLANK check and the code threw an exception at which point no more messages were processed. Seems wrong for calling code to not handle the exception Code snippet here with BLANk check added final short fid = (short) fieldEntry.fieldId(); final String name = fieldEntry.name(); if (Chains.REF_COUNT_FID == fid && Data.DataCode.BLANK != fieldEntry.code()) { refCount = ((int) fieldEntry.uintValue()); Exception Exception in thread "pool-55-thread-1" Exception Type='OmmInvalidUsageException', Text='Attempt to uintValue() while entry data is blank.', Error Code='-4048' at com.thomsonreuters.ema.access.EntryImpl.ommIUExcept(EntryImpl.java:628) at com.thomsonreuters.ema.access.EntryImpl.uintValue(EntryImpl.java:347) at com.nomura.estrat.reuters.ema.chains.ChainEventHandler.processChain(ChainEventHandler.java:92) at com.nomura.estrat.reuters.ema.chains.ChainEventHandler.onRefreshMsg(ChainEventHandler.java:47) at com.thomsonreuters.ema.access.ItemCallbackClientConsumer.notifyOnRefreshMsg(ItemCallbackClient.java:2561) at com.thomsonreuters.ema.access.ItemCallbackClient.processRefreshMsg(ItemCallbackClient.java:1789) at com.thomsonreuters.ema.access.ItemCallbackClient.defaultMsgCallback(ItemCallbackClient.java:1626) at com.thomsonreuters.upa.valueadd.reactor.Reactor.sendDefaultMsgCallback(Reactor.java:1894) at com.thomsonreuters.upa.valueadd.reactor.Reactor.sendAndHandleDefaultMsgCallback(Reactor.java:1909) at com.thomsonreuters.upa.valueadd.reactor.WlItemHandler.callbackUser(WlItemHandler.java:2940) at com.thomsonreuters.upa.valueadd.reactor.WlItemHandler.readRefreshMsg(WlItemHandler.java:2191) at com.thomsonreuters.upa.valueadd.reactor.WlItemHandler.readMsg(WlItemHandler.java:1905) at com.thomsonreuters.upa.valueadd.reactor.Watchlist.readMsg(Watchlist.java:292) at com.thomsonreuters.upa.valueadd.reactor.Reactor.performChannelRead(Reactor.java:2861) at com.thomsonreuters.upa.valueadd.reactor.Reactor.dispatchChannel(Reactor.java:2481) at com.thomsonreuters.upa.valueadd.reactor.ReactorChannel.dispatch(ReactorChannel.java:574) at com.thomsonreuters.ema.access.OmmBaseImpl.rsslReactorDispatchLoop(OmmBaseImpl.java:1487) at com.thomsonreuters.ema.access.OmmBaseImpl.run(OmmBaseImpl.java:1620) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:748)
elektronrefinitiv-realtimeelektron-sdkema-apirrtelektron-message-apiexception
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.

@john.moorhouse

Hi,

Thank you for your participation in the forum.

Is the reply below satisfactory in answering your question?

If yes please click the 'Accept' text next to the reply. This will guide all community members who have a similar question.

Otherwise please post again offering further insight into your 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

1 Answer

· Write an Answer
Upvotes
Accepted
22.1k 59 14 21

Hi @john.moorhouse,

I think, it would be incorrect for a real-time SDK which promises to deliver every message, to handle/ignore an exception and continue working. You can view the source code at Refinitiv github site here, and propose a pull request for any deficiency.

PS: You are using an older version of SDK, and should update to a latest one.

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.