[QFJ-170] Repeating group not parsed correctly Created: 01/May/07 Updated: 10/May/07 Resolved: 10/May/07 |
|
| Status: | Closed |
| Project: | QuickFIX/J |
| Component/s: | Message Generation |
| Affects Version/s: | 1.1.0 |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Default |
| Reporter: | Naresh Bhatia | Assignee: | Steve Bate |
| Resolution: | Not a bug | Votes: | 0 |
| Labels: | None | ||
| Environment: |
Windows |
||
| Attachments: |
|
| Description |
|
The attached program creates a NewOrderSingle message with a NoAllocs group repeating twice. It converts the message to a string and then parses the string back to a message. Unfortunately one instance of the repeating group is lost, only one instance shows up when the parsed message is converted back to a string. I really hope that I am overlooking something! |
| Comments |
| Comment by Naresh Bhatia [ 01/May/07 ] |
|
BTW, here's the output from the sample program. The two message strings should be equal, but they are not: Message1: 8=FIX.4.49=14135=D34=10049=COOLTRD52=20070501-00:17:2556=MA11=ORDER_3091738=100.540=154=155=IBM60=20070501-00:17:2578=279=Account179=Account210=205 Message2: 8=FIX.4.49=12935=D34=10049=COOLTRD52=20070501-00:17:2556=MA11=ORDER_3091738=100.540=154=155=IBM60=20070501-00:17:2578=279=Account210=039 Note that Account1 is missing from Message2. |
| Comment by Steve Bate [ 10/May/07 ] |
|
To parse a message with a repeating group, you must include a data dictionary. The data dictionary provides metadata to know which fields are part of repeating groups. Your test program did not use a DD when parsing the message. After adding the DD argument to the message constructor, the test worked correctly. |
| Comment by Steve Bate [ 10/May/07 ] |
|
By the way, thanks for the test case. |
| Comment by Naresh Bhatia [ 10/May/07 ] |
|
Thanks Steve. It works beautifully after adding the data dictionary. Perhaps this would be a useful tip to add to the docs. |