Uploaded image for project: 'QuickFIX/J'
  1. QuickFIX/J
  2. QFJ-171

MessageFactory cannot create certain groups

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Default
    • Resolution: Fixed
    • Affects Version/s: 1.1.0
    • Fix Version/s: 1.2.0
    • Component/s: Message Generation
    • Labels:
      None
    • Environment:
      Windows

      Description

      MessageFactory returns a null from the following signature for certain groups:

      public Group create(String beginString, String msgType, int correspondingFieldID);

      For example,

      messageFactory("FIX.4.4", MsgType.ORDER_SINGLE, NoPartyIDs.FIELD);

      returns a null.

      I think the problem is with the code generation of message factories. For example, the relavant code in quickfix.fix44.MessageFactory does not include a check for NoPartyIDs.FIELD, although this is a group defined for the NewOrderSingle message type.

      if("D".equals(msgType)) {
      switch(correspondingFieldID)

      { case quickfix.field.NoAllocs.FIELD: return new quickfix.fix44.NewOrderSingle.NoAllocs(); case quickfix.field.NoTradingSessions.FIELD: return new quickfix.fix44.NewOrderSingle.NoTradingSessions(); case quickfix.field.NoUnderlyings.FIELD: return new quickfix.fix44.NewOrderSingle.NoUnderlyings(); }

      }

      It is possible that this code is not generated because NoPartyIDs is part of the "Parties" component defined within the NewOrderSingle message.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                admin Steve Bate
                Reporter:
                nbhatia Naresh Bhatia
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: