0

In my application, I am receiving a NewOrderMultiLeg message. The entire message is logged into the 'messages.log' file. But when I recevie the message into the onMessage(Message message, SessionID sessionID) method, I am getting only a part of the message, the message is getting truncated. i.e I only one element from the repeated group and the rest of the messages are truncated. I pasted here the message I recevied in log file and method.

Please help me to sort out this issue.

Message from application debugger.

8=FIX.4.49=10935=AB34=749=Server52=20150525-07:10:47.05956=TRADERINFO1=0.011=1250000163=1110=0228=0555=3635=0.010=075

Message from FIX logger.

8=FIX.4.49=24735=AB49=Server56=XXXXXXX34=452=20150525-07:08:14.71111=125000011=0.063=1635=0.0110=0228=0555=3616=9623=1687=10565=1616=3623=1687=10565=1616=13623=1687=10565=160=20150525-07:08:09.874152=1040=2376=XXXXXXXSERVER835=310=229

I am using FIX 4.4, quickfixj1.5.3.

Part of my config file

RejectInvalidMessage=N
ValidateFieldsHaveValues=N
ValidateIncomingMessage=N
ValidateFieldsOutOfOrder=N
ValidateUserDefinedFields=N
DefaultApplVerID=FIX.4.4
UseDataDictionary=Y

Thanks in advance.

Thanks Bibin

Bibin Zacharias
  • 159
  • 1
  • 2
  • 7
  • Please insert some kind of visible field separator (such as "|") into your messages so we can read them. – Grant Birchmeier May 25 '15 at 13:06
  • Do you have `DataDictionary=path/to/your/dd.xml` in your config? – Grant Birchmeier May 25 '15 at 13:07
  • Message from application debugger. 8=FIX.4.4||9=109||35=AB||34=7||49=Server||52=20150525-07:10:47.059||56=XXXXXXX||1=0.0||11=12500001||63=1||110=0||228=0||555=3||635=0.0||10=075|| Message from FIX logger. 8=FIX.4.4||9=247||35=AB||49=Server||56=TRADERINFO||34=4||52=20150525-07:08:14.711||11=12500001||1=0.0||63=1||635=0.0||110=0||228=0||555=3||616=9||623=1||687=10||565=1||616=3||623=1||687=10||565=1||616=13||623=1||687=10||565=1||60=20150525-07:08:09.874||152=10||40=2||376=XXXXXXSERVER||835=3||10=229||. the fields are seperated by ||. – Bibin Zacharias May 26 '15 at 07:15
  • I kept the DD in the class path, since I use UseDataDictionary=Y, it will pick the appropriate DD from the config location. – Bibin Zacharias May 26 '15 at 07:22
  • I'm not sure QF/j works like that. – Grant Birchmeier May 26 '15 at 13:28

1 Answers1

0

I was missing one mandatory field 'LegSymbol' in InstrumentLeg component. In QuickFIX/J FIX4.4 dictionary shows 'LegSymbol' is non mandatory field but I found from some other sources, it is a mandatory field. Once I started receving the message with 'LegSymbol' field, my issues got sorted out.

Thanks Bibin

Bibin Zacharias
  • 159
  • 1
  • 2
  • 7