camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From yogu13 <>
Subject Camel-Quickfix dynamic SenderSubId/TargetSubId issue
Date Sun, 13 Jan 2013 07:55:54 GMT

I am using Camel version 2.10.3 , QuickFix/J version 1.5 on JDK 1.6.x, I am
facing an issue with camel-quickfix component for the following scenario.

We have a FIX message coming in to the Quickfix/J engine i.e. logon request
with only the senderID and TargetID populated and the engine successfully
processes the logon request based on the configuration. The subsequent
requests for Single Order (Tag # 35 = D) the message received contains the
optional values SenderSubID and TargetSubID populated, the message is picked
up by the camel component without any issue but its only when a reply has to
sent to the sender the component ends up throwing a error i.e.
IllegalStateException : Unknown Session... I looked into the code
and found the issue. The session ID is being reconstructed from the out
value being set into the exchange object which as per API used would
construct the session containing SenderID,SenderSubID,TargetID and
TargetSubID which is getting compared to the session set during the logon
process which only contains the SenderID and TargetID and hence doesnt
matches and returns a null. On receiving the null value the code ends up
throwing the IllegalStateException. Looking at the QuickFixJConsumer code i
do understand the importance of reconstructing the SessionID object from the
Message set as Out in Exchange but from what i read about various client
implementations on using FIX the above scenario mentioned also holds good.
For now I have gone ahead and patched the QuickFixJConsumer code for my
project by picking up the session id set in Exchange object rather than
recreating it using the MessageUtils. But i feel in a longer run a elegant
solution has to be put in place rather than user of camel patching the code
up for their use:) Also i m not sure if there is any alternative solution
available .. please suggest the way ahead.

In case you need any further details do let me know..

Thanks in advance ...


View this message in context:
Sent from the Camel Development mailing list archive at

View raw message