Author |
Message
|
rsashi |
Posted: Mon Mar 08, 2004 8:57 am Post subject: XML Validation with schema on WBIMB V5 |
|
|
Apprentice
Joined: 29 Jan 2004 Posts: 35
|
Hi all ,
I am trying to implement XML validation in my message flow on WBIMB V5 , i am not sure if it's possible in V5. If so, can any one point me how to work with XML Schema validation for the in coming XML message. I have imported the XML schema into a message set , but when i use the message set in the flow its passing the in- valid XML msgs also to the output queue with out any issues. It will be helpful if any one can point me in a right direction.
Thanks
Kiran |
|
Back to top |
|
 |
TonyD |
Posted: Mon Mar 08, 2004 1:49 pm Post subject: |
|
|
Knight
Joined: 15 May 2001 Posts: 540 Location: New Zealand
|
Certainly XML validation is possible in V5 against a schema-derived message set. I suggest you read the WBIMB V5 Help section re 'Validation Properties'. These determine what action is to be taken if there is a validation failure. |
|
Back to top |
|
 |
rsashi |
Posted: Tue Mar 09, 2004 11:14 am Post subject: |
|
|
Apprentice
Joined: 29 Jan 2004 Posts: 35
|
Thanks TonyD .
Validation works fine with using the validation properties of MQInput Node. But how to handle if a msg fails on validation, failed msg is not going to failure or catch terminal of the MQInput Node...it just disappears . Any suggestion on how to catch the failure msg.
thanks
sashi |
|
Back to top |
|
 |
kirani |
Posted: Tue Mar 09, 2004 6:30 pm Post subject: |
|
|
Jedi Knight
Joined: 05 Sep 2001 Posts: 3779 Location: Torrance, CA, USA
|
Can you explain your message flow, like what are the properties (Transaction) of your MQInput node and what other nodes do you have connected to "catch" and "failure" terminals. _________________ 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 |
|
 |
TonyD |
Posted: Tue Mar 09, 2004 9:07 pm Post subject: |
|
|
Knight
Joined: 15 May 2001 Posts: 540 Location: New Zealand
|
I can't comment on every type of validation situation. However I read an XML document with a deliberate element name error into a simple test flow that had the Validation Properties of the MQInput node set to:
Validate: Content and Value
Failure Action: Exception
Timing: Complete
The error was detected by validation, shown in a concurrent user trace, and the input message was routed to the Failure terminal of the MQInput node and arrived on the failure queue. |
|
Back to top |
|
 |
wooda |
Posted: Thu Mar 11, 2004 1:15 am Post subject: |
|
|
 Master
Joined: 21 Nov 2003 Posts: 265 Location: UK
|
In order to cause a a message to be sent through the failure path upon failing validation you need to set validation property Failure Action to "Exception".
If you set the Timing property to "Complete" or "Immediate" then the validation will take place in the input node. This means that if a failure occurs the message will be retried until it reaches the backout count then it will be routed to failure (if there is one connected) otherwise it will go to the backout queue or DLQ.
If you set the Timing property to "Defered" then the validation take place later when the message is parsed (eg. in a compute node). This means that if a failure occurs the message will be routed to the first upstream catch terminal.
If you are still having problems then a user trace of the message flow would be useful to further diagnose the problem. |
|
Back to top |
|
 |
JLRowe |
Posted: Thu Mar 11, 2004 9:29 am Post subject: |
|
|
 Yatiri
Joined: 25 May 2002 Posts: 664 Location: South East London
|
Beware that validation in the input node is going to change in a future CSD. Currently, the message goes straight to the failure terminal, which IBM have admitted is wrong. The desired behaviour is to go to the catch terminal so you have a chance to recover or log the error. |
|
Back to top |
|
 |
|