|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Redefines..again! |
« View previous topic :: View next topic » |
Author |
Message
|
TonyD |
Posted: Wed Dec 18, 2002 8:08 pm Post subject: Redefines..again! |
|
|
Knight
Joined: 15 May 2001 Posts: 540 Location: New Zealand
|
I am still trying, without success, to process a redefined field. My problem is that I don't understand the error message!
Input is XML, output is MRM based on imported Cobol copybook. I have a redefined group item as follows:
Code: |
01 EMP_REC
03 EMPNO.
05 FIRST-3 PIC X(3).
05 LAST-7 PIC X(7).
03 EMPNO_X REDEFINES EMPNO PIC X(10)
|
The requirement is to be able to either work with (i.e. SET) FIRST-3 and LAST-7 or EMPNO_X, depending on tested values in the incoming XML message.
When the copybook is imported a compound element is generated as follows:
Code: |
EMP_REC_GROUP001_TYPE
EMPNO EMPNO_TYPE
FIRST_3 STRING
LAST_10 STRING
EMPNO_X STRING
|
Each of the simple elements (String) is shown as Fixed Length with the correct length, left-justified, padded with spaces.
'EMP_REC_GROUP001' has 'Type Composition=Choice' and 'TypeContent=Closed'. Everything therefore appears to be OK.
In my message flow I set OutputRoot.EMPNO_X = InputRoot.Empno (a 10-byte string). A trace shows the tree copy being done, and a Trace Node Root display show the output message exactly in the format required.
However the flow fails with a Custom Wire error as follows:
Quote: |
2002-12-19 14:37:24.568000 2472 ParserException BIP5345E: CWF Worker: The tree contains an illegal choice element.
Message name: 'EMP_REC_GROUP001'
Element name: ''
The CWF worker cannot handle certain types of elements (those for which the length depends on the actual value of the message) within a 'choice' element. This error indicates that the CWF Worker has encountered such elements and cannot proceed with parsing or writing.
Redesign the message in question so that its 'choice' elements do not contain the illegal physical types (null, null terminated string, length encoded string 1 and length encoded string 2) or use a different wire format.
|
It is the above message that I don't understand. The faulty element name is not given, and as far as I can tell, none of the 'choice' elements are of the 'illegal physical types'. Is what I am trying to do possible or not? |
|
Back to top |
|
 |
kirani |
Posted: Thu Dec 19, 2002 8:12 pm Post subject: |
|
|
Jedi Knight
Joined: 05 Sep 2001 Posts: 3779 Location: Torrance, CA, USA
|
Working with REDEFINES is always fun
What CSD level you are at? CSD3 or CSD2?
I'd like to have a look at your ExceptionList, could you post it here?
This error message is misleading, most probably the error is coming because one of the element in Choice type is not getting set. This could be because of incorrect reference to the element name.
Your Correct reference for choice element should be something like ..
OutputRoot.MRM.EMPNO_X; _________________ Kiran
IBM Cert. Solution Designer & System Administrator - WBIMB V5
IBM Cert. Solutions Expert - WMQI
IBM Cert. Specialist - WMQI, MQSeries
IBM Cert. Developer - MQSeries
|
|
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
|
|
|
|