[QFJ-652] Reject is missing RefTagID when answering SequenceReset with invalid NewSeqNo Created: 15/Nov/11 Updated: 01/Dec/11 Resolved: 01/Dec/11 |
|
Status: | Closed |
Project: | QuickFIX/J |
Component/s: | Engine |
Affects Version/s: | 1.5.1 |
Fix Version/s: | 1.5.2 |
Type: | Improvement | Priority: | Minor |
Reporter: | Christoph John | Assignee: | Christoph John |
Resolution: | Fixed | Votes: | 0 |
Labels: | session |
Description |
When sending a SequenceReset message with invalid (i.e. too low) tag 36/NewSeqNo, QFJ answers with a Reject. This is correct, but the Reject is missing the tag 371/RefTagID. sending message: 8=FIX.4.49=6735=434=252=20111115-14:33:51.65449=FixClient56=FixGateway36=110=049 received message: 8=FIX.4.49=12935=334=349=FixGateway52=20111115-13:33:58.18056=FixClient45=258=Value is incorrect (out of range) for this tag372=4373=510=146 Looking at the code in Session.nextSequenceReset() the method generateReject(sequenceReset, SessionRejectReason.VALUE_IS_INCORRECT, 0) is called. Here we should supply NewSeqNo.FIELD instead of 0. Further down the chain, the method setRejectReason will prevent the 371/RefTagID field to be set for FIX versions lower than FIX4.2. |