QuoteType.FIELD, OrderQty.FIELD, SettlDate.FIELD, QuotePriceType.FIELD,
ValidUntilTime.FIELD, ExpireTime.FIELD
};
Message message = new QuoteRequest(new QuoteReqID("20101110-2"));
Group group = new Group(NoRelatedSym.FIELD, Symbol.FIELD, order);
group.setField(new Symbol("TestSymbol"));
group.setField(new SecurityID("SecurityID"));
group.setField(new SecurityIDSource("SecurityIDSource"));
group.setField(new Product(11));
group.setField(new QuoteType(1));
group.setField(new OrderQty(500));
group.setField(new SettlDate("20151116"));
group.setField(new QuotePriceType(1));
group.setField(new ValidUntilTime(new Date()));
group.setField(new ExpireTime(new Date()));
message.addGroup(group);
System.out.println("Original Message: " + message);
MessageContext msgCtx = new MessageContext();
FIXUtils.getInstance().setSOAPEnvelope(message, 1, "TestSession", msgCtx);
OMElement msgElt = msgCtx.getEnvelope().getBody().getFirstElement();
OMElement groupsElt = msgElt.getFirstChildWithName(new QName(FIXConstants.FIX_BODY)).
getFirstChildWithName(new QName(FIXConstants.FIX_GROUPS));
int groupId = Integer.parseInt(groupsElt.getAttributeValue(
new QName(FIXConstants.FIX_FIELD_ID)));
assertEquals(groupId, group.getFieldTag());
// Test whether the fileds in the SOAP infoset are in the correct order
Iterator fields = groupsElt.getFirstElement().getChildrenWithName(
new QName(FIXConstants.FIX_FIELD));
List<Integer> fieldList = new ArrayList<Integer>();