|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
MRM Parsing Exception |
« View previous topic :: View next topic » |
Author |
Message
|
rb1 |
Posted: Fri Oct 06, 2006 12:30 pm Post subject: MRM Parsing Exception |
|
|
Newbie
Joined: 06 Oct 2006 Posts: 3
|
Hi All,
I am getting parsing errors while trying to convert XML message to copy book structure (CWF format). I could populate the message structure correctly, but in the final output node it is giving parsing exceptions. I tried to set the message properties (msg format) and still it is giving me the error.
The trace log is given below..
ParserException BIP5286E: Message Translation Interface Writing Errors have occurred:
Message Set Name : ''TestMfreplycwf''
Message Set Level : '1'
Message Format : ''CWF1''
Message Type Path : ''msg_OMTXRPLY''
Review further error messages for an indication to the cause of the errors.
2006-10-06 14:56:35.788300~42225600 ParserException BIP5167E: Custom Wire Format error while parsing/writing message ''msg_OMTXRPLY''.
2006-10-06 14:56:35.788308~42225600 ParserException BIP5350E: Custom Wire Format writing error. While writing the message quoted above, the CWF writer encountered an error.
The error occurred during or after the writing of element ''/msg_OMTXRPLY/OMTXRPLY_LINE_DETAILS''.
Check that you have built the message correctly.
See following messages for more details.
2006-10-06 14:56:35.788320~42225600 ParserException BIP5344E: CWF Output: Mismatch between logical definition and message tree.
Message : 'msg_OMTXRPLY'
Element : '77^OMTXRPLY_LINE_LINE_NUMBER'
The CWF writer has been given a message tree which does not match the logical message definition.
The elements may have been added to the message tree in the wrong order, or there may be elements missing from the message tree.
The message type or message set may be incorrect.
If the output message was assembled in a Compute node, check that the elements were added to the message in the order specified in the logical message definition.
Check that the output message contains all the elements in the logical message definition (perhaps you need to copy the entire input message to the output tree before modifying it)
Check that the output message has the correct message set and message type properties.
Check that the output message does not contain self-defining elements.
Check that any missing elements have default values defined.
The structure of the message after the transformation is given below..
(0x01000021):MRM = (
(0x01000000):OMTXRPLY_INVOICE_DETAILS = (
(0x0300000B):OMTXRPLY_INVOICE_CALLING_SYS = 'CALLING SYSTEM NAME'
(0x0300000B):OMTXRPLY_INVOICE_COMPANY_NAME = 'COMPANY NAME'
(0x03000000):OMTXRPLY_INVOICE_DATE = 20061003
(0x03000000):OMTXRPLY_INVOICE_NUMBER = 1234567
(0x03000000):OMTXRPLY_INVOICE_TOTAL_TAX = 100
(0x0300000B):OMTXRPLY_INV_MSG_CATEGORY = '001'
(0x0300000B):OMTXRPLY_INV_MSG_CODE = '005'
(0x0300000B):OMTXRPLY_INV_MSG_TEXT = 'MESSAGE TEXT '
(0x0300000B):OMTXRPLY_INV_MSG_SEVERITY = '1'
)
(0x01000000):OMTXRPLY_LINE_DETAILS = (
(0x03000000):OMTXRPLY_LINE_LINE_NUMBER = 111
(0x01000000):OMTXRPLY_LINE_PART_NUMBER = (
(0x03000000):OMTXRPLY_LINE_PART_LOT = '1234567'
(0x03000000):OMTXRPLY_LINE_PART_SKU = '891'
)
(0x03000000):OMTXRPLY_LINE_TOTAL_TAX = 21
(0x0300000B):OMTXRPLY_LINE_MSG_CATEGORY = '003'
(0x0300000B):OMTXRPLY_LINE_MSG_CODE = '004'
(0x0300000B):OMTXRPLY_LINE_MSG_TEXT = 'SEC MSG TEXT'
(0x0300000B):OMTXRPLY_LINE_MSG_SEVERITY = '2'
)
)
The copy book structure is as given below..
000100 01 OMTXRPLY.
001102*-----------------------------------------------------------------
001103*
001104 02 OMTXRPLY-INVOICE-DETAILS.
001106 03 OMTXRPLY-INVOICE-CALLING-SYS PIC X(40) VALUE 1 40
001107 'ORDER SUMMARIZATION TAX REQUEST MS520020'.
001400 03 OMTXRPLY-INVOICE-COMPANY-NAME PIC X(15) VALUE 41 55
001500 'COMPANY NAME'.
003100 03 OMTXRPLY-INVOICE-DATE PIC 9( . 56 63
003200* FORMAT YYYYMMDD
003400 03 OMTXRPLY-INVOICE-NUMBER PIC 9( . 64 71
003500 03 OMTXRPLY-INVOICE-TOTAL-TAX PIC 9(4)V99. 72 77
003704 03 OMTXRPLY-INV-MSG-CATEGORY PIC X(10). 78 87
003705 03 OMTXRPLY-INV-MSG-CODE PIC X(50). 88 137
003706 03 OMTXRPLY-INV-MSG-TEXT PIC X(50). 138 187
003707 03 OMTXRPLY-INV-MSG-SEVERITY PIC X(1). 188 188
003810
003900 02 OMTXRPLY-LINE-DETAILS OCCURS 10 TIMES. 1891488
003910 03 OMTXRPLY-LINE-LINE-NUMBER PIC 9(3).
003920 03 OMTXRPLY-LINE-PART-NUMBER.
003930 05 OMTXRPLY-LINE-PART-LOT PIC X(7).
003940 05 OMTXRPLY-LINE-PART-SKU PIC X(3).
004000 03 OMTXRPLY-LINE-TOTAL-TAX PIC 9(4)V99.
004280 03 OMTXRPLY-LINE-MSG-CATEGORY PIC X(10).
004290 03 OMTXRPLY-LINE-MSG-CODE PIC X(50).
004300 03 OMTXRPLY-LINE-MSG-TEXT PIC X(50).
004400 03 OMTXRPLY-LINE-MSG-SEVERITY PIC X(1).
I am not getting this error if I am using a TDS structure with the same ESQL code base (except the changes for the message properties).
I am using MB v6.
Can anyone please help me? |
|
Back to top |
|
 |
fjb_saper |
Posted: Fri Oct 06, 2006 3:01 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
See following messages for more details.
2006-10-06 14:56:35.788320~42225600 ParserException BIP5344E: CWF Output: Mismatch between logical definition and message tree.
Message : 'msg_OMTXRPLY'
Element : '77^OMTXRPLY_LINE_LINE_NUMBER'
The CWF writer has been given a message tree which does not match the logical message definition.
The elements may have been added to the message tree in the wrong order, or there may be elements missing from the message tree.
But those 2 seem fine. However the following tax line shoud have 21.00 and not just 21 as a number.... Check your definition. Maybe it is the same problem in the above stuff. Sometimes the broker is fickle about having the right type of data in the fields before serialization. So you may have to cast the values to decimal or to integer...
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
rb1 |
Posted: Fri Oct 06, 2006 3:36 pm Post subject: |
|
|
Newbie
Joined: 06 Oct 2006 Posts: 3
|
Thanks Saper for your response.
I had defined my message structure with the detail node (OMTXRPLY-LINE-DETAILS) repeating for 10 times and in the message it was repeating once. When I modified the message structure to have minoccurs as 1 and max occurs as -1, it is working fine. |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|