@Test
public void testMessageValidateBodyOnly() throws Exception {

    final quickfix.fix44.NewOrderSingle newSingle = new quickfix.fix44.NewOrderSingle(
            new ClOrdID("123"), new Side(Side.BUY), new TransactTime(), new OrdType(
                    OrdType.LIMIT));
    newSingle.setField(new OrderQty(42));
    newSingle.setField(new Price(42.37));
    newSingle.setField(new HandlInst());
    newSingle.setField(new Symbol("QFJ"));
    newSingle.setField(new HandlInst(HandlInst.MANUAL_ORDER_BEST_EXECUTION));
    newSingle.setField(new TimeInForce(TimeInForce.DAY));
    newSingle.setField(new Account("testAccount"));
    final DataDictionary dd = getDictionary();
    new ExpectedTestFailure(FieldException.class, "field=") {
        @Override
        protected void execute() throws Throwable {
            dd.validate(newSingle);
        }
    }.run();
    dd.validate(newSingle, true);
}