[QFJ-374] ValidateFieldsHaveValues=N does not work for enum fields Created: 20/Nov/08  Updated: 15/Nov/12  Resolved: 05/Apr/10

Status: Closed
Project: QuickFIX/J
Component/s: Engine
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Default
Reporter: Alvin Wang Assignee: Unassigned
Resolution: Not a bug Votes: 0
Labels: None


 Description   

Our counterparty sent us a FIX msg with '865='. Our QFJ rejected (SessionRejectReason(373)=6(INCORRECT_DATA_FORMAT_FOR_VALUE)), even though we have set ValidateFieldsHaveValues=N. I wonder if it does not work for enum fields?



 Comments   
Comment by Alvin Wang [ 25/Nov/08 ]

i found even if i change 865 to be a non-enum fields in dictionary, i still have the rejection. Then i changed its type from int to String, it seems it is ok now. so it seems the bug is that ValidateFieldsHaveValues=N does not work for int (or non-String data types), which is not directly related to enum

Comment by Steve Bate [ 26/Nov/08 ]

This should work. Do you have a JUnit test case to demonstrate the problem?

Comment by Alvin Wang [ 26/Nov/08 ]

Sorry I do not have one. It just happens in production and I've already set ValidateFieldsHaveValues=N and i thought it would forgive it anyhow.
maybe the DATA FORMAT validation happens before FieldsHaveValues validation?
thanks

Comment by Steve Bate [ 05/Apr/10 ]

Actually, ValidateFieldsHaveValues controls whether QFJ allows empty field values. It is not related to enum validation.

Comment by Alvin Wang [ 15/Nov/12 ]

but "865=" is empty value

Generated at Tue Jul 01 07:47:50 UTC 2025 using JIRA 7.5.2#75007-sha1:9f5725bb824792b3230a5d8716f0c13e296a3cae.