ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » DFDL serializing error - how to get more details on the err.

Post new topic  Reply to topic Goto page 1, 2  Next
 DFDL serializing error - how to get more details on the err. « View previous topic :: View next topic » 
Author Message
kathirvelt
PostPosted: Mon Jan 12, 2015 2:04 pm    Post subject: DFDL serializing error - how to get more details on the err. Reply with quote

Apprentice

Joined: 02 Oct 2010
Posts: 32

I'm working with ACH file format and using DFDL schema to parse/transfrom the file and generate output in same format and write to file.

Getting below error.


Code:
2015-01-08 17:19:28.486966     6427                        >> } *DFDL* DFDLSerializer_endElement , 1
2015-01-08 17:19:28.486972     6427                        >> { ImbDataFlowManager::type 6ad968cb-4a01-0000-0080-c03a45aeeb0d MessageFlow , MFL_PAS_ACH_TMK_EFT_To_Bank
2015-01-08 17:19:28.486976     6427                        >> } ImbDataFlowManager::type 6ad968cb-4a01-0000-0080-c03a45aeeb0d MessageFlow , MFL_PAS_ACH_TMK_EFT_To_Bank
2015-01-08 17:19:28.486984     6427                        >> { ImbDFDLErrorHandler::handleSerializerErrors MFL_PAS_ACH_TMK_EFT_To_Bank#FCMComposite_1_1 ComIbmFileInputNode , (*ptr)119fd29f0, MFL_PAS_ACH_TMK_EFT_To_Bank.File Input
2015-01-08 17:19:28.487050     6427                        >> ImbDFDLErrorHandler::handleSerializerErrors , 'Throwing exception', '/build/slot1/S800_P/src/MTI/MTIforBroker/DfdlParser/ImbDFDLErrorHandler.cpp', 314, 'bipnum', 'An error occurred whilst serializing with DFDL', 'CTDU4035E: ', '/DFDL/{ach:2013}:ACHFile/{ach:2013}:Batch[1]/{ach:2013}:PPDEntry[1]'
2015-01-08 17:19:28.487062     6427                        >> { ImbDataFlowManager::type 6ad968cb-4a01-0000-0080-c03a45aeeb0d MessageFlow , MFL_PAS_ACH_TMK_EFT_To_Bank
2015-01-08 17:19:28.487068     6427                        >> } ImbDataFlowManager::type 6ad968cb-4a01-0000-0080-c03a45aeeb0d MessageFlow , MFL_PAS_ACH_TMK_EFT_To_Bank
2015-01-08 17:19:28.487108     6427                        >> { ImbDataFlowManager::type 6ad968cb-4a01-0000-0080-c03a45aeeb0d MessageFlow , MFL_PAS_ACH_TMK_EFT_To_Bank
2015-01-08 17:19:28.487122     6427                        >> } ImbDataFlowManager::type 6ad968cb-4a01-0000-0080-c03a45aeeb0d MessageFlow , MFL_PAS_ACH_TMK_EFT_To_Bank
2015-01-08 17:19:28.487130     6427                        >> { ImbDFDLWriter::resetDFDLSerializer MFL_PAS_ACH_TMK_EFT_To_Bank#FCMComposite_1_1 ComIbmFileInputNode , MFL_PAS_ACH_TMK_EFT_To_Bank.File Input



When I just use default procedure to copy message from input to output message tree getting written to file without any issues.

But after using default proc to copy the message when I change the value for one of the element is message tree getting the serializing error . Code used to change the value in message tree is below.

Code:

DECLARE tgtNs NAMESPACE 'ach:2013';
SET OutputRoot.DFDL.tgtNs:ACHFile.tgtNs:FileHeaderRecord.tgtNs:ImmediateDestination = '1111211111';


Can someone let me know how to get more details on error message/logs.
Back to top
View user's profile Send private message
kimbert
PostPosted: Mon Jan 12, 2015 2:44 pm    Post subject: Reply with quote

Jedi Council

Joined: 29 Jul 2003
Posts: 5542
Location: Southampton

Quote:
Can someone let me know how to get more details on error message/logs
You have quoted from a service trace, so you are probably getting far too much information.
My advice:
- use the debugger for normal diagnosis tasks
- get into the habit of using debug-level user trace, not service trace
- follow the advice in this excellent article:
https://www.ibm.com/developerworks/community/blogs/c7e1448b-9651-456c-9924-f78bec90d2c2/entry/diagnostic_tools_available_in_websphere_message_broker_and_ibm_integration_bus?maxresults=5&msgid=1&lang=en

...and only use service trace when all other options have failed. It is not meant for users, and it is far too detailed for almost all user-level diagnosis.
_________________
Before you criticize someone, walk a mile in their shoes. That way you're a mile away, and you have their shoes too.
Back to top
View user's profile Send private message
kathirvelt
PostPosted: Mon Jan 12, 2015 3:05 pm    Post subject: Reply with quote

Apprentice

Joined: 02 Oct 2010
Posts: 32

I did use debug mode to identify the error, but it gives the same information that I see in the service trace. My output structure looks ok when I view through debug mode.

Code:

                     Text:CHARACTER:An error occurred whilst serializing with DFDL
                     Insert
                           Type:INTEGER:5
                           Text:CHARACTER:CTDU4035E:
                     Insert
                           Type:INTEGER:5
                           Text:CHARACTER:/DFDL/{ach:2013}:ACHFile/{ach:2013}:Batch[1]/{ach:2013}:PPDEntry[1]


I'll enable the user trace and see if I get more details.
Back to top
View user's profile Send private message
kimbert
PostPosted: Mon Jan 12, 2015 3:13 pm    Post subject: Reply with quote

Jedi Council

Joined: 29 Jul 2003
Posts: 5542
Location: Southampton

I should have said...
the debugger is not great when you need to see the details of a message tree. Trace nodes ( with destination set to 'user trace' ) work really well for me.
_________________
Before you criticize someone, walk a mile in their shoes. That way you're a mile away, and you have their shoes too.
Back to top
View user's profile Send private message
kathirvelt
PostPosted: Tue Jan 13, 2015 9:47 am    Post subject: Reply with quote

Apprentice

Joined: 02 Oct 2010
Posts: 32

I do see the same information in user trace. There are no much details other than what I see in the debug mode or service trace.

Code:

                                           (0x01000000:Name     ):ParserException = (
                                             (0x03000000:NameValue):File     = '/build/slot1/S800_P/src/MTI/MTIforBroker/DfdlParser/ImbDFDLErrorHandler.cpp' (CHARACTER)
                                             (0x03000000:NameValue):Line     = 314 (INTEGER)
                                             (0x03000000:NameValue):Function = 'ImbDFDLErrorHandler::handleSerializerErrors' (CHARACTER)
                                             (0x03000000:NameValue):Type     = 'ComIbmFileInputNode' (CHARACTER)
                                             (0x03000000:NameValue):Name     = 'MFL_PAS_ACH_TMK_EFT_To_Bank#FCMComposite_1_1' (CHARACTER)
                                             (0x03000000:NameValue):Label    = 'MFL_PAS_ACH_TMK_EFT_To_Bank.File Input' (CHARACTER)
                                             (0x03000000:NameValue):Catalog  = 'BIPmsgs' (CHARACTER)
                                             (0x03000000:NameValue):Severity = 3 (INTEGER)
                                             (0x03000000:NameValue):Number   = 5832 (INTEGER)
                                             (0x03000000:NameValue):Text     = 'An error occurred whilst serializing with DFDL' (CHARACTER)
                                             (0x01000000:Name     ):Insert   = (
                                               (0x03000000:NameValue):Type = 5 (INTEGER)
                                               (0x03000000:NameValue):Text = 'CTDU4035E: ' (CHARACTER)
                                             )
                                             (0x01000000:Name     ):Insert   = (
                                               (0x03000000:NameValue):Type = 5 (INTEGER)
                                               (0x03000000:NameValue):Text = '/DFDL/{ach:2013}:ACHFile/{ach:2013}:Batch[1]/{ach:2013}:PPDEntry[1]' (CHARACTER)
                                             )
                                           )
                                         )
                                       ) ~
Back to top
View user's profile Send private message
Vitor
PostPosted: Tue Jan 13, 2015 9:56 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

kathirvelt wrote:
I do see the same information in user trace. There are no much details other than what I see in the debug mode or service trace.


And when you used a Trace node as @kimbert suggested, what did you see?

The information may be the same as in the user trace, but much of the IBM Service Desk specific information has been stripped out and it's easier to read.

Debug mode shows you a parsed presentation of the data. If the problem you're trying to diagnose is a parsing problem, seeing a parsed attempt by the debugger rather than the message tree is unhelpful.

Finally, and critically, the user trace not only holds the error which you've posted but also what the DFDL parser did prior to throwing the error. This is key to working out how the error occured.

There should also be a lot more error than the first part you've posted here.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
kathirvelt
PostPosted: Tue Jan 13, 2015 11:03 am    Post subject: Reply with quote

Apprentice

Joined: 02 Oct 2010
Posts: 32

I included trace node after the catch terminal and selected the destination as user trace. Specified the following in the pattern.

Code:

${CURRENT_TIMESTAMP} :---------Exception Catch Begin--------------~
${CURRENT_TIMESTAMP} :${ExceptionList} ~
${CURRENT_TIMESTAMP} :${Root}~
${CURRENT_TIMESTAMP} :---------Exception Catch End----------------~


Following are the complete trace I get in the user trace. I have just removed the message tree from the log. I do not see the information why it is throwing an error.



Code:

Timestamps are formatted in local time, 360 minutes before GMT.
Trace written by version 8004; formatter version 8004 (build S800-FP04 on rios_aix_4)

2015-01-13 10:28:04.107494     6427   UserTrace   BIP4060I: Data ''
                                       '' from trace node 'MFL_PAS_ACH_TMK_EFT_To_Bank.Trace'.
                                       The trace node 'MFL_PAS_ACH_TMK_EFT_To_Bank.Trace' has output the specified trace data.
                                       This is an information message provided by the message flow designer.  The user response will be determined by the local environment.
2015-01-13 10:33:15.632339     4381   UserTrace   BIP4060I: Data ''--2015-01-13 10:33:15.608184 --
                                       ( ['GENERICROOT' : 0x112964390]
                                         (0x01000000:Name):Properties = ( ['GENERICPROPERTYPARSER' : 0x117766170]
                                           (0x03000000:NameValue):MessageSet             = '' (CHARACTER)
                                           (0x03000000:NameValue):MessageType            = '{ach:2013}:ACHFile' (CHARACTER)
                                           (0x03000000:NameValue):MessageFormat          = '' (CHARACTER)
                                           (0x03000000:NameValue):Encoding               = 273 (INTEGER)
                                           (0x03000000:NameValue):CodedCharSetId         = 819 (INTEGER)
                                           (0x03000000:NameValue):Transactional          = FALSE (BOOLEAN)
                                           (0x03000000:NameValue):Persistence            = FALSE (BOOLEAN)
                                           (0x03000000:NameValue):CreationTime           = GMTTIMESTAMP '2015-01-13 16:33:15.360053' (GMTTIMESTAMP)
                                           (0x03000000:NameValue):ExpirationTime         = -1 (INTEGER)
                                           (0x03000000:NameValue):Priority               = 0 (INTEGER)
                                           (0x03000000:NameValue):ReplyIdentifier        = X'' (BLOB)
                                           (0x03000000:NameValue):ReplyProtocol          = 'ADAPTOR' (CHARACTER)
                                           (0x03000000:NameValue):Topic                  = NULL
                                           (0x03000000:NameValue):ContentType            = '' (CHARACTER)
                                           (0x03000000:NameValue):IdentitySourceType     = '' (CHARACTER)
                                           (0x03000000:NameValue):IdentitySourceToken    = '' (CHARACTER)
                                           (0x03000000:NameValue):IdentitySourcePassword = '' (CHARACTER)
                                           (0x03000000:NameValue):IdentitySourceIssuedBy = '' (CHARACTER)
                                           (0x03000000:NameValue):IdentityMappedType     = '' (CHARACTER)
                                           (0x03000000:NameValue):IdentityMappedToken    = '' (CHARACTER)
                                           (0x03000000:NameValue):IdentityMappedPassword = '' (CHARACTER)
                                           (0x03000000:NameValue):IdentityMappedIssuedBy = '' (CHARACTER)
                                         )
                                               (0x01000000:Name)ach:2013:PPDEntry           = (
                                                 (0x01000000:Name)ach:2013:PPDEntryDetailRecord = (
                                                   (0x03000000:NameValue)ach:2013:RecordTypeCode             = '6' '' from trace node 'MFL_PAS_ACH_TMK_EFT_To_Bank.Trace'.
                                       The trace node 'MFL_PAS_ACH_TMK_EFT_To_Bank.Trace' has output the specified trace data.
                                       This is an information message provided by the message flow designer.  The user response will be determined by the local environment.
2015-01-13 10:33:15.648477     4381   UserTrace   BIP4060I: Data ''2015-01-13 10:33:15.644383 :---------Exception Catch Begin--------------~
                                       2015-01-13 10:33:15.644383 :( ['MQROOT' : 0x115e42a30]
                                         (0x01000000:Name):RecoverableException = (
                                           (0x03000000:NameValue):File            = '/build/slot1/S800_P/src/DataFlowEngine/TemplateNodes/ImbOutputTemplateNode.cpp' (CHARACTER)
                                           (0x03000000:NameValue):Line            = 326 (INTEGER)
                                           (0x03000000:NameValue):Function        = 'ImbOutputTemplateNode::processMessageAssemblyToFailure' (CHARACTER)
                                           (0x03000000:NameValue):Type            = 'ComIbmFileOutputNode' (CHARACTER)
                                           (0x03000000:NameValue):Name            = 'MFL_PAS_ACH_TMK_EFT_To_Bank#FCMComposite_1_5' (CHARACTER)
                                           (0x03000000:NameValue):Label           = 'MFL_PAS_ACH_TMK_EFT_To_Bank.Bank_File_Output' (CHARACTER)
                                           (0x03000000:NameValue):Catalog         = 'BIPmsgs' (CHARACTER)
                                           (0x03000000:NameValue):Severity        = 3 (INTEGER)
                                           (0x03000000:NameValue):Number          = 2230 (INTEGER)
                                           (0x03000000:NameValue):Text            = 'Caught exception and rethrowing' (CHARACTER)
                                           (0x01000000:Name     ):Insert          = (
                                             (0x03000000:NameValue):Type = 14 (INTEGER)
                                             (0x03000000:NameValue):Text = 'MFL_PAS_ACH_TMK_EFT_To_Bank.Bank_File_Output' (CHARACTER)
                                           )
                                           (0x01000000:Name     ):ParserException = (
                                             (0x03000000:NameValue):File     = '/build/slot1/S800_P/src/MTI/MTIforBroker/DfdlParser/ImbDFDLErrorHandler.cpp' (CHARACTER)
                                             (0x03000000:NameValue):Line     = 314 (INTEGER)
                                             (0x03000000:NameValue):Function = 'ImbDFDLErrorHandler::handleSerializerErrors' (CHARACTER)
                                             (0x03000000:NameValue):Type     = 'ComIbmFileInputNode' (CHARACTER)
                                             (0x03000000:NameValue):Name     = 'MFL_PAS_ACH_TMK_EFT_To_Bank#FCMComposite_1_1' (CHARACTER)
                                             (0x03000000:NameValue):Label    = 'MFL_PAS_ACH_TMK_EFT_To_Bank.File Input' (CHARACTER)
                                             (0x03000000:NameValue):Catalog  = 'BIPmsgs' (CHARACTER)
                                             (0x03000000:NameValue):Severity = 3 (INTEGER)
                                             (0x03000000:NameValue):Number   = 5832 (INTEGER)
                                             (0x03000000:NameValue):Text     = 'An error occurred whilst serializing with DFDL' (CHARACTER)
                                             (0x01000000:Name     ):Insert   = (
                                               (0x03000000:NameValue):Type = 5 (INTEGER)
                                               (0x03000000:NameValue):Text = 'CTDU4035E: ' (CHARACTER)
                                             )
                                             (0x01000000:Name     ):Insert   = (
                                               (0x03000000:NameValue):Type = 5 (INTEGER)
                                               (0x03000000:NameValue):Text = '/DFDL/{ach:2013}:ACHFile/{ach:2013}:Batch[1]/{ach:2013}:PPDEntry[1]' (CHARACTER)
                                             )
                                           )
                                         )
                                       ) ~
                                       2015-01-13 10:33:15.644383 :( ['GENERICROOT' : 0x11294f410]
                                         (0x01000000:Name):Properties = ( ['GENERICPROPERTYPARSER' : 0x116d1c6d0]
                                           (0x03000000:NameValue):MessageSet             = '' (CHARACTER)
                                           (0x03000000:NameValue):MessageType            = '{ach:2013}:ACHFile' (CHARACTER)
                                           (0x03000000:NameValue):MessageFormat          = '' (CHARACTER)
                                           (0x03000000:NameValue):Encoding               = 273 (INTEGER)
                                           (0x03000000:NameValue):CodedCharSetId         = 819 (INTEGER)
                                           (0x03000000:NameValue):Transactional          = FALSE (BOOLEAN)
                                           (0x03000000:NameValue):Persistence            = FALSE (BOOLEAN)
                                           (0x03000000:NameValue):CreationTime           = GMTTIMESTAMP '2015-01-13 16:33:15.360053' (GMTTIMESTAMP)
                                           (0x03000000:NameValue):ExpirationTime         = -1 (INTEGER)
                                           (0x03000000:NameValue):Priority               = 0 (INTEGER)
                                           (0x03000000:NameValue):ReplyIdentifier        = X'' (BLOB)
                                           (0x03000000:NameValue):ReplyProtocol          = 'ADAPTOR' (CHARACTER)
                                           (0x03000000:NameValue):Topic                  = NULL
                                           (0x03000000:NameValue):ContentType            = '' (CHARACTER)
                                           (0x03000000:NameValue):IdentitySourceType     = '' (CHARACTER)
                                           (0x03000000:NameValue):IdentitySourceToken    = '' (CHARACTER)
                                           (0x03000000:NameValue):IdentitySourcePassword = '' (CHARACTER)
                                           (0x03000000:NameValue):IdentitySourceIssuedBy = '' (CHARACTER)
                                           (0x03000000:NameValue):IdentityMappedType     = '' (CHARACTER)
                                           (0x03000000:NameValue):IdentityMappedToken    = '' (CHARACTER)
                                           (0x03000000:NameValue):IdentityMappedPassword = '' (CHARACTER)
                                           (0x03000000:NameValue):IdentityMappedIssuedBy = '' (CHARACTER)
                                         )
                                               (0x01000000:Name)ach:2013:PPDEntry           = (
                                                 (0x01000000:Name)ach:2013:PPDEntryDetailRecord = (
                                                   (0x03000000:NameValue)ach:2013:RecordTypeCode             = '6' (CHARACTER)
                                                   (0x03000000:NameValue)ach:2013:TransactionCode            = '27' (CHARACTER)
                                                   (0x03000000:NameValue)ach:2013:ReceivingDFIIdentification = '00005642' (CHARACTER)
                                                   (0x03000000:NameValue)ach:2013:CheckDigit                 = '2' (CHARACTER)
                                                   (0x03000000:NameValue)ach:2013:DFIAccountNumber           = '00000000005642   ' (CHARACTER)
                                                   (0x03000000:NameValue)ach:2013:Amount                     = '0000016540' (CHARACTER)
                                                   (0x03000000:NameValue)ach:2013:IdentificationNumber       = 'P00005642      ' (CHARACTER)
                                                   (0x03000000:NameValue)ach:2013:IndividualName             = 'PERSON NAME000005642  ' (CHARACTER)
                                                   (0x03000000:NameValue)ach:2013:DiscretionaryData          = '  ' (CHARACTER)
                                                   (0x03000000:NameValue)ach:2013:AddendaRecordIndicator     = '0' (CHARACTER)
                                                   (0x03000000:NameValue)ach:2013:TraceNumber                = '000000000000000' (CHARACTER)
                                                 )
                                               )
                                               (0x01000000:Name)ach:2013:PPDEntry           = (
                                                 (0x0'' from trace node 'MFL_PAS_ACH_TMK_EFT_To_Bank.MFL_Common_Err_Catch.Catch_Trace'.
                                       The trace node 'MFL_PAS_ACH_TMK_EFT_To_Bank.MFL_Common_Err_Catch.Catch_Trace' has output the specified trace data.
                                       This is an information message provided by the message flow designer.  The user response will be determined by the local environment.

Threads encountered in this trace:
  4381  6427



I get the error when I try to write the message to file or to the queue. I even placed a trace node before the fileoutput node. In user trace and debug just seeing the same error. Should I enable the user trace at execution group level?
Back to top
View user's profile Send private message
Vitor
PostPosted: Tue Jan 13, 2015 11:11 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

kathirvelt wrote:
Should I enable the user trace at execution group level?


Yes. When we told you to use user trace, we sort of expected you to enable it!!!!!



Especially as you've demonstrated the ability to enable a service trace.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
kathirvelt
PostPosted: Tue Jan 13, 2015 11:36 am    Post subject: Reply with quote

Apprentice

Joined: 02 Oct 2010
Posts: 32

Okay, I enabled the user trace at execution group level now I got more details . I'm seeing the following message but now sure what is the issue.

Code:
An exception has been thrown to cut short the processing of the message.


Code:

2015-01-13 13:17:19.357094     6427   UserTrace   BIP5841I: ''Offset: 285. Finished processing element 'PPDEntryDetailRecord'.''
2015-01-13 13:17:19.357108     6427   UserTrace   BIP5843E: ''''
2015-01-13 13:17:19.357490     6427   UserTrace   BIP3337I: The node ''Bank_File_Output'' in message flow ''MFL_PAS_ACH_TMK_EFT_To_Bank'' is deleting file ''EFT_TMK_payment_to_bank.dat'' from directory ''/appdata/EAIFTP/ACHTransaction/EFT/OUT/mqsitransit''.
                                       The node is about to delete an existing file.
                                       No user action is necessary.
2015-01-13 13:17:19.359120     6427   UserTrace   BIP4081I: Message propagated to catch terminal from try-catch node 'MFL_PAS_ACH_TMK_EFT_To_Bank.MFL_Common_Err_Catch.Error_Handling_Try_Catch'.
                                       The try-catch node 'MFL_PAS_ACH_TMK_EFT_To_Bank.MFL_Common_Err_Catch.Error_Handling_Try_Catch' has caught an exception which occurred in a node connected to its try terminal. The message has been augmented with an exception list and is propagating it to any nodes connected to its catch terminal for further processing. See the following messages for details of the exception list.
                                       No user action required.
2015-01-13 13:17:19.359132     6427   RecoverableException  BIP2230E: Error detected whilst processing a message in node 'MFL_PAS_ACH_TMK_EFT_To_Bank.Bank_File_Output'.
                                       The message broker detected an error whilst processing a message in node 'MFL_PAS_ACH_TMK_EFT_To_Bank.Bank_File_Output'. An exception has been thrown to cut short the processing of the message.
                                       See the following messages for details of the error.
2015-01-13 13:17:19.359138     6427   ParserException  BIP5832E: The DFDL serializer signalled that an error occurred when processing a DFDL schema.  The message from the DFDL serializer is:  'CTDU4035E: '  The element being serialized was:  '/DFDL/{ach:2013}:ACHFile/{ach:2013}:Batch[1]/{ach:2013}:PPDEntry[1]'
                                       A DFDL schema error occurred during the serializing of a DFDL message tree.
                                       Review and resolve the problems indicated in the message from the DFDL serializer by modifying or deleting the specified element from the DFDL message tree.
2015-01-13 13:17:19.359300     6427   UserTrace   BIP2540I: Node 'MFL_PAS_ACH_TMK_EFT_To_Bank.MFL_Common_Err_Catch.Catch_Trace': Finished evaluating expression ''CURRENT_TIMESTAMP'' at ('', '1.3'). The result was ''TIMESTAMP '2015-01-13 13:17:19.359169'''.
2015-01-13 13:17:19.359316     6427   UserTrace   BIP2540I: Node 'MFL_PAS_ACH_TMK_EFT_To_Bank.MFL_Common_Err_Catch.Catch_Trace': Finished evaluating expression ''CURRENT_TIMESTAMP'' at ('', '2.3'). The result was ''TIMESTAMP '2015-01-13 13:17:19.359169'''.
2015-01-13 13:17:19.359332     6427   UserTrace   BIP2539I: Node 'MFL_PAS_ACH_TMK_EFT_To_Bank.MFL_Common_Err_Catch.Catch_Trace': Evaluating expression ''ExceptionList'' at ('', '2.25'). This resolved to ''ExceptionList''. The result was ''ROW... Root Element Type=16777216 NameSpace='' Name='Root' Value=NULL''.
2015-01-13 13:17:19.359440     6427   UserTrace   BIP2540I: Node 'MFL_PAS_ACH_TMK_EFT_To_Bank.MFL_Common_Err_Catch.Catch_Trace': Finished evaluating expression ''CURRENT_TIMESTAMP'' at ('', '3.3'). The result was ''TIMESTAMP '2015-01-13 13:17:19.359169'''.
2015-01-13 13:17:19.359454     6427   UserTrace   BIP2539I: Node 'MFL_PAS_ACH_TMK_EFT_To_Bank.MFL_Common_Err_Catch.Catch_Trace': Evaluating expression ''Root'' at ('', '3.25'). This resolved to ''Root''. The result was ''ROW... Root Element Type=16777216 NameSpace='' Name='Root' Value=NULL''.
2015-01-13 13:17:19.363574     6427   UserTrace   BIP2540I: Node 'MFL_PAS_ACH_TMK_EFT_To_Bank.MFL_Common_Err_Catch.Catch_Trace': Finished evaluating expression ''CURRENT_TIMESTAMP'' at ('', '4.3'). The result was ''TIMESTAMP '2015-01-13 13:17:19.359169'''.
2015-01-13 13:17:19.363612     6427   UserTrace   BIP4060I: Data ''2015-01-13 13:17:19.359169 :---------Exception Catch Begin--------------~
                                       2015-01-13 13:17:19.359169 :( ['MQROOT' : 0x115f2f3d0]
                                         (0x01000000:Name):RecoverableException = (
                                           (0x03000000:NameValue):File            = '/build/slot1/S800_P/src/DataFlowEngine/TemplateNodes/ImbOutputTemplateNode.cpp' (CHARACTER)
                                           (0x03000000:NameValue):Line            = 326 (INTEGER)
                                           (0x03000000:NameValue):Function        = 'ImbOutputTemplateNode::processMessageAssemblyToFailure' (CHARACTER)
                                           (0x03000000:NameValue):Type            = 'ComIbmFileOutputNode' (CHARACTER)
                                           (0x03000000:NameValue):Name            = 'MFL_PAS_ACH_TMK_EFT_To_Bank#FCMComposite_1_5' (CHARACTER)
                                           (0x03000000:NameValue):Label           = 'MFL_PAS_ACH_TMK_EFT_To_Bank.Bank_File_Output' (CHARACTER)
                                           (0x03000000:NameValue):Catalog         = 'BIPmsgs' (CHARACTER)
                                           (0x03000000:NameValue):Severity        = 3 (INTEGER)
                                           (0x03000000:NameValue):Number          = 2230 (INTEGER)
                                           (0x03000000:NameValue):Text            = 'Caught exception and rethrowing' (CHARACTER)
                                           (0x01000000:Name     ):Insert          = (
                                             (0x03000000:NameValue):Type = 14 (INTEGER)
                                             (0x03000000:NameValue):Text = 'MFL_PAS_ACH_TMK_EFT_To_Bank.Bank_File_Output' (CHARACTER)
                                           )
                                           (0x01000000:Name     ):ParserException = (
                                             (0x03000000:NameValue):File     = '/build/slot1/S800_P/src/MTI/MTIforBroker/DfdlParser/ImbDFDLErrorHandler.cpp' (CHARACTER)
                                             (0x03000000:NameValue):Line     = 314 (INTEGER)
                                             (0x03000000:NameValue):Function = 'ImbDFDLErrorHandler::handleSerializerErrors' (CHARACTER)
                                             (0x03000000:NameValue):Type     = 'ComIbmFileInputNode' (CHARACTER)
                                             (0x03000000:NameValue):Name     = 'MFL_PAS_ACH_TMK_EFT_To_Bank#FCMComposite_1_1' (CHARACTER)
                                             (0x03000000:NameValue):Label    = 'MFL_PAS_ACH_TMK_EFT_To_Bank.File Input' (CHARACTER)
                                             (0x03000000:NameValue):Catalog  = 'BIPmsgs' (CHARACTER)
                                             (0x03000000:NameValue):Severity = 3 (INTEGER)
                                             (0x03000000:NameValue):Number   = 5832 (INTEGER)
                                             (0x03000000:NameValue):Text     = 'An error occurred whilst serializing with DFDL' (CHARACTER)
                                             (0x01000000:Name     ):Insert   = (
                                               (0x03000000:NameValue):Type = 5 (INTEGER)
                                               (0x03000000:NameValue):Text = 'CTDU4035E: ' (CHARACTER)
                                             )
                                             (0x01000000:Name     ):Insert   = (
                                               (0x03000000:NameValue):Type = 5 (INTEGER)
                                               (0x03000000:NameValue):Text = '/DFDL/{ach:2013}:ACHFile/{ach:2013}:Batch[1]/{ach:2013}:PPDEntry[1]' (CHARACTER)
                                             )
                                           )
                                         )
                                       ) ~
Back to top
View user's profile Send private message
Vitor
PostPosted: Tue Jan 13, 2015 11:46 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

kathirvelt wrote:
Okay, I enabled the user trace at execution group level now I got more details . I'm seeing the following message but now sure what is the issue.


Well looking at what you've posted....

kathirvelt wrote:
Code:

2015-01-13 13:17:19.357094     6427   UserTrace   BIP5841I: ''Offset: 285. Finished processing element 'PPDEntryDetailRecord'.''
2015-01-13 13:17:19.357108     6427   UserTrace   BIP5843E: ''''
2015-01-13 13:17:19.357490     6427   UserTrace   BIP3337I: The node ''Bank_File_Output'' in message flow ''MFL_PAS_ACH_TMK_EFT_To_Bank'' is deleting file ''EFT_TMK_payment_to_bank.dat'' from directory ''/appdata/EAIFTP/ACHTransaction/EFT/OUT/mqsitransit''.
                                       The node is about to delete an existing file.
                                       No user action is necessary.
2015-01-13 13:17:19.359120     6427   UserTrace   BIP4081I: Message propagated to catch terminal from try-catch node 'MFL_PAS_ACH_TMK_EFT_To_Bank.MFL_Common_Err_Catch.Error_Handling_Try_Catch'.


This shows the flow removing the file from mqsitransit (part of the FileOutput node's recovery process) and then passing control to a catch terminal on a TryCatch node. So what you've posted here shows the result of the failure, not the cause which will be earlier in the trace. Observe the very top line:

[quote="kathirvelt"]
Code:

2015-01-13 13:17:19.357094     6427   UserTrace   BIP5841I: ''Offset: 285. Finished processing element 'PPDEntryDetailRecord'.''
2015-01-13 13:17:19.357108     6427   UserTrace   BIP5843E: ''''

So the element serialized 'PPDEntryDetailRecord' and then went boom. What did it report prior to that? If this is,as I suspect, the top level record element are all the child elements reported correctly? Do all the data types match? And so forth, and so forth....
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
kathirvelt
PostPosted: Tue Jan 13, 2015 12:26 pm    Post subject: Reply with quote

Apprentice

Joined: 02 Oct 2010
Posts: 32

I do not see any error before the message that I have posted.

Code:
                                               )
                                               (0x01000000:Name)ach:2013:PPDEntry           = (
                                                 (0x01000000:Name)ach:2013:PPDEntryDetailRecord = (
                                                   (0x03000000:NameValue)ach:2013:RecordTypeCode             = '6' '' from trace node 'MFL_PAS_ACH_TMK_EFT_To_Bank.Trace'.
                                       The trace node 'MFL_PAS_ACH_TMK_EFT_To_Bank.Trace' has output the specified trace data.
                                       This is an information message provided by the message flow designer.  The user response will be determined by the local environment.
2015-01-13 13:17:19.348498     6427   UserTrace   BIP4067I: Message propagated to output terminal for trace node 'MFL_PAS_ACH_TMK_EFT_To_Bank.Trace'.
                                       The trace node 'MFL_PAS_ACH_TMK_EFT_To_Bank.Trace' has received a message and is propagating it to any nodes connected to its output terminal.
                                       No user action required.
2015-01-13 13:17:19.350360     6427   UserTrace   BIP3353I: ''File output'' node ''Bank_File_Output'' in message flow ''MFL_PAS_ACH_TMK_EFT_To_Bank'' is creating file ''/appdata/EAIFTP/ACHTransaction/EFT/OUT/mqsitransit/EFT_TMK_payment_to_bank.dat''.
                                       The ''File output'' node is about to create a new file for writing output records.
                                       No action is required.
2015-01-13 13:17:19.352944     6427   UserTrace   BIP3354I: ''File output'' node ''Bank_File_Output'' in message flow ''MFL_PAS_ACH_TMK_EFT_To_Bank'' is adding a record to file ''/appdata/EAIFTP/ACHTransaction/EFT/OUT/mqsitransit/EFT_TMK_payment_to_bank.dat'' at offset ''0''.
                                       The ''File output'' node is about to write a record into the file, starting from the given offset.
                                       No action is required.
2015-01-13 13:17:19.353874     6427   UserTrace   BIP5841I: ''The default value of '%LF;' was assigned to variable 'outputNewLine' in namespace 'http://www.ogf.org/dfdl/dfdl-1.0/'.       ''
2015-01-13 13:17:19.353918     6427   UserTrace   BIP5841I: ''Offset: 0. Starting to process the DFDL info set.''
2015-01-13 13:17:19.353976     6427   UserTrace   BIP5841I: ''Offset: 0. Starting to write root element 'ACHFile'.''
2015-01-13 13:17:19.354002     6427   UserTrace   BIP5841I: ''Offset: 0. Starting to process element 'ACHFile'.''
2015-01-13 13:17:19.354036     6427   UserTrace   BIP5841I: ''Offset: 0. Starting to process element 'FileHeaderRecord'.''
2015-01-13 13:17:19.354098     6427   UserTrace   BIP5841I: ''Offset: 0. Explicit length '94' 'bytes' set for complex element 'FileHeaderRecord'.''
2015-01-13 13:17:19.354134     6427   UserTrace   BIP5841I: ''Offset: 0. Starting to process element 'RecordTypeCode'.''
2015-01-13 13:17:19.354204     6427   UserTrace   BIP5841I: ''Offset: 0. Wrote text string value '1' for element 'RecordTypeCode'. ''
2015-01-13 13:17:19.354232     6427   UserTrace   BIP5841I: ''Offset: 1. Finished processing element 'RecordTypeCode'.''
2015-01-13 13:17:19.354258     6427   UserTrace   BIP5841I: ''Offset: 1. Starting to process element 'PriorityCode'.''
2015-01-13 13:17:19.354282     6427   UserTrace   BIP5841I: ''Offset: 1. Wrote text string value '01' for element 'PriorityCode'. ''
2015-01-13 13:17:19.354302     6427   UserTrace   BIP5841I: ''Offset: 3. Finished processing element 'PriorityCode'.''
2015-01-13 13:17:19.354330     6427   UserTrace   BIP5841I: ''Offset: 3. Starting to process element 'ImmediateDestination'.''
2015-01-13 13:17:19.354352     6427   UserTrace   BIP5841I: ''Offset: 3. Wrote text string value '1111211111' for element 'ImmediateDestination'. ''
2015-01-13 13:17:19.354372     6427   UserTrace   BIP5841I: ''Offset: 13. Finished processing element 'ImmediateDestination'.''
2015-01-13 13:17:19.354392     6427   UserTrace   BIP5841I: ''Offset: 13. Starting to process element 'ImmediateOrigin'.''
2015-01-13 13:17:19.354414     6427   UserTrace   BIP5841I: ''Offset: 13. Wrote text string value '2222222222' for element 'ImmediateOrigin'. ''
2015-01-13 13:17:19.354434     6427   UserTrace   BIP5841I: ''Offset: 23. Finished processing element 'ImmediateOrigin'.''
2015-01-13 13:17:19.354452     6427   UserTrace   BIP5841I: ''Offset: 23. Starting to process element 'FileCreationDate'.''
2015-01-13 13:17:19.354476     6427   UserTrace   BIP5841I: ''Offset: 23. Wrote text string value '140829' for element 'FileCreationDate'. ''
2015-01-13 13:17:19.354496     6427   UserTrace   BIP5841I: ''Offset: 29. Finished processing element 'FileCreationDate'.''
2015-01-13 13:17:19.354516     6427   UserTrace   BIP5841I: ''Offset: 29. Starting to process element 'FileCreationTime'.''
2015-01-13 13:17:19.354538     6427   UserTrace   BIP5841I: ''Offset: 29. Wrote text string value '2145' for element 'FileCreationTime'. ''
2015-01-13 13:17:19.354558     6427   UserTrace   BIP5841I: ''Offset: 33. Finished processing element 'FileCreationTime'.''
2015-01-13 13:17:19.354584     6427   UserTrace   BIP5841I: ''Offset: 33. Starting to process element 'FileIdModifier'.''
2015-01-13 13:17:19.354606     6427   UserTrace   BIP5841I: ''Offset: 33. Wrote text string value 'A' for element 'FileIdModifier'. ''
2015-01-13 13:17:19.354626     6427   UserTrace   BIP5841I: ''Offset: 34. Finished processing element 'FileIdModifier'.''
2015-01-13 13:17:19.354644     6427   UserTrace   BIP5841I: ''Offset: 34. Starting to process element 'RecordSize'.''
2015-01-13 13:17:19.354668     6427   UserTrace   BIP5841I: ''Offset: 34. Wrote text string value '094' for element 'RecordSize'. ''
2015-01-13 13:17:19.354684     6427   UserTrace   BIP5841I: ''Offset: 37. Finished processing element 'RecordSize'.''
2015-01-13 13:17:19.354706     6427   UserTrace   BIP5841I: ''Offset: 37. Starting to process element 'BlockingFactor'.''
2015-01-13 13:17:19.354726     6427   UserTrace   BIP5841I: ''Offset: 37. Wrote text string value '10' for element 'BlockingFactor'. ''
2015-01-13 13:17:19.354746     6427   UserTrace   BIP5841I: ''Offset: 39. Finished processing element 'BlockingFactor'.''
2015-01-13 13:17:19.354764     6427   UserTrace   BIP5841I: ''Offset: 39. Starting to process element 'FormatCode'.''


To keep this simple I only have following code in my compute node. I have enabled validation in fileinput node against the DFDL schema. File is parsed without any error. When I just update one element getting the error when writing it to the file. The element that I'm updating is alpha type with 10 byte long.

Code:

      CALL CopyMessageHeaders();
      CALL CopyEntireMessage();
      DECLARE tgtNs_ref NAMESPACE 'ach:2013';
      SET OutputRoot.DFDL.tgtNs_ref:ACHFile[1].tgtNs_ref:FileHeaderRecord[1].tgtNs_ref:ImmediateDestination = '1111211111';

Back to top
View user's profile Send private message
Vitor
PostPosted: Tue Jan 13, 2015 12:47 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

kathirvelt wrote:
I do not see any error before the message that I have posted.


I didn't say you would. I asked what the DFDL parser reported in the user trace when it was serializing the message.

If you're looking for a message that says "element <x> is what's wrong" then you're going to be disapointed; the error about serialization failure is all you're going to get. You need to use the user trace, Trace nodes and other information to diagnose what's wrong and what it is about the resulting message tree that can't be serialized. Thought, investigation and a certain amount of experimentation will be required. For instance:

kathirvelt wrote:
I have enabled validation in fileinput node against the DFDL schema. File is parsed without any error.


If you turn validation off, do you get an output file without errors and looking like you think it should? If so, there's a problem with the DFDL model that describes the output and a good next step will be to take the output file so produced (which you think looks right) and be the Toolkit to serialize it via the DFDL perspective. The trace produced from that should indicate in much greater detail what's going on.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
kathirvelt
PostPosted: Tue Jan 13, 2015 1:39 pm    Post subject: Reply with quote

Apprentice

Joined: 02 Oct 2010
Posts: 32

Thanks Vitor & Kimber, I was able to resolve the issue. As per the DFDL schema it was expecting the addendum record. I made the modification to the schema and removed those choices from the schema. I was able to parse and write the file to output node.

But this is little hard to identify the issue without experiment, the error log does not point you to the exact error.
Back to top
View user's profile Send private message
kimbert
PostPosted: Tue Jan 13, 2015 1:40 pm    Post subject: Reply with quote

Jedi Council

Joined: 29 Jul 2003
Posts: 5542
Location: Southampton

Quote:
File is parsed without any error. When I just update one element getting the error when writing it to the file.
That is easy to explain. IF you do not modify the message tree THEN the DFDL serializer will not be needed because the message has not changed. The flow will just send the input bitstream out of the output node.

If the DFDL parser could not serialize the message then I would expect it to report a clearly-worded error. And that error would definitely be in the user trace. So I think this may be a defect in the DFDL parser.

I notice that you are on WMB v8. Which fix pack level are you on?
_________________
Before you criticize someone, walk a mile in their shoes. That way you're a mile away, and you have their shoes too.
Back to top
View user's profile Send private message
kathirvelt
PostPosted: Tue Jan 13, 2015 1:44 pm    Post subject: Reply with quote

Apprentice

Joined: 02 Oct 2010
Posts: 32

I'm using MQSI 8.0.0.4
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Goto page 1, 2  Next Page 1 of 2

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » DFDL serializing error - how to get more details on the err.
Jump to:  



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
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.