Search code examples
quickfixj

QuickFIX/J: Not required field raises missing field error


In the fix session dictionary the field 97 is set to be not required :

<field name="PossResend" required="N"/>

But when I receive a fix message not containing that field (97) I get these errors :

...
ERROR Field not found error: Field was not found in message, field=97
ERROR Message trame: 8=FIXT.1.1|9=265|35=6|34=505|49=XXX|52=20240205-12:53:56|56=XXX|57=XXX|15=USD|22=1|23=XXXD|27=1000|28=N|44=67.77|48=XXX|54=1|106=XXX|218=23|235=XXX|236=5|423=3|699=XXX|453=2|448=4116570|447=X|452=12|448=XX|447=X|452=1|10=046|
ERROR Root cause null
...

I dont understand what the problem is ! Any ideas ? Could someone help ?


Solution

  • I fixed the issue. The problem was in the parsing process where I was trying to access the field assuming it's always present :

    header.getField(new PossResend())
    

    When I should check if it's there beforehand using :

    header.isSetField(new PossResend())