[Quickfix-developers] Expected BodyLength
Brought to you by:
orenmnero
From: Patrick F. <pat...@ch...> - 2005-01-11 22:35:54
|
Quick Fix Developers, I am sending a MassQuote message from an Initiator to an Acceptor using QuickFIX 1.9.4, the message is rejected by the acceptor with error: "<20050111-22:27:14, FIX.4.4:TW->CLIENT1, event> (Invalid message: Expected BodyLength=128, Recieved BodyLength=122)" I sent this message: "8=FIX.4.49=12235=i34=349=CLIENT152=20050111-22:27:14.68756=TW117=0296=1302= 0304=1295=155=0:0:0:call132=14133=0134=15135=010=010" Using C# code: int qID = 0; QuickFix44.MassQuote mq = new MassQuote(); foreach(QuoteRequest q in massQuote.QuotesRequests) { q.Parameters[CTCFields.ProductKey.ToString()] = q.ProductKey; CTCDictionary param = new CTCDictionary(q.Parameters); QuickFix44.MassQuote.NoQuoteSets grp = new QuickFix44.MassQuote.NoQuoteSets(); QuickFix44.MassQuote.NoQuoteSets.NoQuoteEntries fields = new QuickFix44.MassQuote.NoQuoteSets.NoQuoteEntries(); QuoteSetID sID = new QuoteSetID(qID.ToString()); grp.set(sID); double bidPX = Convert.ToDouble(param.GetBidPrice()); double askPX = Convert.ToDouble(param.GetAskPrice()); double bidSize = param.GetBidSize(); double askSize = param.GetAskSize(); fields.set(new BidPx(bidPX)); fields.set(new BidSize(askPX)); fields.set(new OfferPx(bidSize)); fields.set(new OfferSize(askSize)); fields.set(new Symbol(param.GetProductKeyStruct().ToString())); grp.addGroup(fields); TotNoQuoteEntries tot = new TotNoQuoteEntries(); tot.setValue(1); grp.set(tot); NoQuoteEntries qu = new NoQuoteEntries(); QuoteEntryID id = new QuoteEntryID(qID.ToString()); fields.set(id); qu.setValue(1); grp.set(qu); qID++; mq.addGroup(grp); } mq.set(new QuoteID("0")); NoQuoteSets no = new NoQuoteSets(); no.setValue(massQuote.Count); mq.set(no); Send(mq); Does anyone know why this would happen? Has any of the code responsible for repeated groups changed? Thanks in advance Patrick Flannery |