Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MessageFactory returns null - create(FIX5.0SP2, AE, 457) instead of an instance of NoUnderlyingSecurityAltId group #822

Open
ishabandi67 opened this issue Jun 7, 2024 · 1 comment
Labels

Comments

@ishabandi67
Copy link

ishabandi67 commented Jun 7, 2024

Describe the bug
quickfix.fix50sp2.MessageFactory.create(FIX5.0SP2, AE, 457) returns null instead of an instance of NoUnderlyingSecurityAltId group

To Reproduce
Create a simple Junit to call this method with the above mentioned parameters.

Expected behavior
Add case "457" under case "AE" (L617) in the nested switch statements to make sure we return the correct instance because it's valid group for quickfix.fix50sp2.TradeCaptureReport.class i.e. it is clearly defined in FIX50SP2.xml

i.e. (TradeCaptureReport.UnderlyingInstrument.UndSecAltIDGrp.NoUnderlyingSecurityAltID)

system information:

  • OS: [Windows]
  • Java version [JDK17]
  • QFJ Version [2.3.1]

Additional context
This issue doesn't seem to exist in fix44 or earlier. Possibly an issue with MessageFactory.xsl and how FIX50SP2 behaves due to the diff in session and app level messages.

Use case: we store fix messages in json format and while converting them back to TradeCaptureReport instance, we use MessageFactory.create(String beginString, String messageType, int correspondingFieldId) to create internal groups. The above bug, returns null and we currently handle it by just skipping the population of this group as it's not of any use to us currently.

@ishabandi67 ishabandi67 added the bug label Jun 7, 2024
@chrjohn
Copy link
Member

chrjohn commented Jun 9, 2024

Could you post a code snippet of how you create the FIX message from JSON?
Also, shouldn't you use createGroup to create groups? But maybe I misunderstood what you try to achieve. Code example or unit test would be helpful.
Thanks :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants