Author |
Message
|
jfrankman |
Posted: Thu Feb 09, 2012 5:16 pm Post subject: SOAP Request - Inconsistent Schema Validation |
|
|
Apprentice
Joined: 18 Jun 2009 Posts: 36
|
I am observing some odd behavior in a flow with a SOAP Request Node. From time to time the flow fails with a
"'A schema validation error has occurred while parsing the XML document'"
This is what is strange to me:
1. The error occurs on the soap request node but the message is not propagated to any of the output terminals. Not even the fault terminal. Its as if the node itself is throwing the error.
2. If I take the same message that failed, run it through the flow in debug node I can't get the failure to occur.
3. If I route the flow's soap request through a tcpip monitor the error never occurs.
4. The error occurs in fits and starts. A few weeks go by with no problems and all of the sudden everything fails for a couple days.
I am not sure if the error is with the flow itself or is due to some sort of voodoo going on with the web service I am calling. But I am at a loss on how to diagnose the error since I cannot put any trace nodes downstream from the soap request node to see what the service being called is returning.
I am looking for any ideas as to what could be causing this behavior or any suggestions on how to further trace/log/monitor/diagnose the problem.
Below is the error message that is captured from the Soap request nodes thrown error:
( ['MQROOT' : 0x202f7cf0]
(0x01000000:Name):RecoverableException = (
(0x03000000:NameValue):File = 'F:\build\S610_P\src\DataFlowEngine\TemplateNodes\ImbRequestTemplateNode.cpp' (CHARACTER)
(0x03000000:NameValue):Line = 417 (INTEGER)
(0x03000000:NameValue):Function = 'ImbRequestTemplateNode::processMessageAssemblyToFailure' (CHARACTER)
(0x03000000:NameValue):Type = 'ImbRequestTemplateNode' (CHARACTER)
(0x03000000:NameValue):Name = 'com/idfbins/scrubber3/tasks/ReleaseIRTask#FCMComposite_1_9.gen/com/idfbins/scrubber3/tasks/RetrieveTasksByFile_irwebservice_ReleaseIRTask#FCMComposite_1_1' (CHARACTER)
(0x03000000:NameValue):Label = 'com.idfbins.scrubber3.tasks.ReleaseIRTask.RetrieveTasksByFile_irwebservice.Request' (CHARACTER)
(0x03000000:NameValue):Catalog = 'BIPv610' (CHARACTER)
(0x03000000:NameValue):Severity = 3 (INTEGER)
(0x03000000:NameValue):Number = 2230 (INTEGER)
(0x03000000:NameValue):Text = 'Caught exception and rethrowing' (CHARACTER)
(0x01000000:Name ):ParserException = (
(0x03000000:NameValue):File = 'F:\build\S610_P\src\DataFlowEngine\ImbRootParser.cpp' (CHARACTER)
(0x03000000:NameValue):Line = 600 (INTEGER)
(0x03000000:NameValue):Function = 'ImbRootParser::parseNextItem' (CHARACTER)
(0x03000000:NameValue):Type = 'ComIbmMQInputNode' (CHARACTER)
(0x03000000:NameValue):Name = 'com/idfbins/scrubber3/tasks/ReleaseIRTask#FCMComposite_1_1' (CHARACTER)
(0x03000000:NameValue):Label = 'com.idfbins.scrubber3.tasks.ReleaseIRTask.FBIR.RELEASETASK.RQ' (CHARACTER)
(0x03000000:NameValue):Catalog = 'BIPv610' (CHARACTER)
(0x03000000:NameValue):Severity = 2 (INTEGER)
(0x03000000:NameValue):Number = 5902 (INTEGER)
(0x03000000:NameValue):Text = 'Exception whilst parsing' (CHARACTER)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = 'Root' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = 'SOAP' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = 'c48de205' (CHARACTER)
)
(0x01000000:Name ):ParserException = (
(0x03000000:NameValue):File = 'F:\build\S610_P\src\WebServices\WSLibrary\ImbSOAPParser.cpp' (CHARACTER)
(0x03000000:NameValue):Line = 2003 (INTEGER)
(0x03000000:NameValue):Function = 'ImbSOAPParser::createSoapShapedTree' (CHARACTER)
(0x03000000:NameValue):Type = '' (CHARACTER)
(0x03000000:NameValue):Name = '' (CHARACTER)
(0x03000000:NameValue):Label = '' (CHARACTER)
(0x03000000:NameValue):Catalog = 'BIPv610' (CHARACTER)
(0x03000000:NameValue):Severity = 3 (INTEGER)
(0x03000000:NameValue):Number = 3614 (INTEGER)
(0x03000000:NameValue):Text = 'problem creating SOAP tree from bitstream' (CHARACTER)
(0x01000000:Name ):ParserException = (
(0x03000000:NameValue):File = 'F:\build\S610_P\src\MTI\MTIforBroker\GenXmlParser4\ImbXMLNSCParser.cpp' (CHARACTER)
(0x03000000:NameValue):Line = 947 (INTEGER)
(0x03000000:NameValue):Function = 'ImbXMLNSCParser::parseLastChild' (CHARACTER)
(0x03000000:NameValue):Type = '' (CHARACTER)
(0x03000000:NameValue):Name = '' (CHARACTER)
(0x03000000:NameValue):Label = '' (CHARACTER)
(0x03000000:NameValue):Catalog = 'BIPv610' (CHARACTER)
(0x03000000:NameValue):Severity = 3 (INTEGER)
(0x03000000:NameValue):Number = 5009 (INTEGER)
(0x03000000:NameValue):Text = 'XML Parsing Errors have occurred' (CHARACTER)
(0x01000000:Name ):ParserException = (
(0x03000000:NameValue):File = 'F:\build\S610_P\src\MTI\MTIforBroker\GenXmlParser4\ImbXMLNSCDocHandler.cpp' (CHARACTER)
(0x03000000:NameValue):Line = 558 (INTEGER)
(0x03000000:NameValue):Function = 'ImbXMLNSCDocHandler::handleParseErrors' (CHARACTER)
(0x03000000:NameValue):Type = 'ComIbmMQInputNode' (CHARACTER)
(0x03000000:NameValue):Name = 'com/idfbins/scrubber3/tasks/ReleaseIRTask#FCMComposite_1_1' (CHARACTER)
(0x03000000:NameValue):Label = 'com.idfbins.scrubber3.tasks.ReleaseIRTask.FBIR.RELEASETASK.RQ' (CHARACTER)
(0x03000000:NameValue):Catalog = 'BIPv610' (CHARACTER)
(0x03000000:NameValue):Severity = 3 (INTEGER)
(0x03000000:NameValue):Number = 5025 (INTEGER)
(0x03000000:NameValue):Text = 'A schema validation error has occurred while parsing the XML document' (CHARACTER)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 2 (INTEGER)
(0x03000000:NameValue):Text = '5012' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 2 (INTEGER)
(0x03000000:NameValue):Text = '1' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 2 (INTEGER)
(0x03000000:NameValue):Text = '1' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 2 (INTEGER)
(0x03000000:NameValue):Text = '719' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = 'cvc-complex-type.3.2: Attribute "id" is not allowed to appear in element "types:IRTask".' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = '/XMLNSC/http://schemas.xmlsoap.org/soap/envelope/:Envelope/http://schemas.xmlsoap.org/soap/envelope/:Body' (CHARACTER)
)
)
)
)
)
)
) |
|
Back to top |
|
 |
fjb_saper |
Posted: Thu Feb 09, 2012 8:49 pm Post subject: Re: SOAP Request - Inconsistent Schema Validation |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
jfrankman wrote: |
Code: |
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = 'cvc-complex-type.3.2: Attribute "id" is not allowed to appear in element "types:IRTask".' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = '/XMLNSC/http://schemas.xmlsoap.org/soap/envelope/:Envelope/http://schemas.xmlsoap.org/soap/envelope/:Body' (CHARACTER)
)
)
)
)
)
)
) |
|
Seem luminous in its description: Attribute "id" is not allowed to appear in element "types:IRTask".'  _________________ MQ & Broker admin |
|
Back to top |
|
 |
jfrankman |
Posted: Mon Feb 13, 2012 6:24 am Post subject: |
|
|
Apprentice
Joined: 18 Jun 2009 Posts: 36
|
I agree the error message is straightforward. What is confusing is why the error happens intermittently and why if when run through debug or a tracing program the error never occurs.
I have already set the validation to none on the soap request node anyway, so am not sure why it raising the error at all. |
|
Back to top |
|
 |
kimbert |
Posted: Mon Feb 13, 2012 6:54 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
Are you on the latest fix pack? If not, then I suggest that you get up to date.
Quote: |
'cvc-complex-type.3.2: Attribute "id" is not allowed to appear in element "types:IRTask".' |
When you captured the failing message, did it have an attribute 'id' within an element of type 'types:IRTask'? Have you tried to validate the XML document against the XSD in another tool?
Quote: |
I have already set the validation to none on the soap request node anyway, so am not sure why it raising the error at all. |
Interesting. Why did you do that? |
|
Back to top |
|
 |
jfrankman |
Posted: Mon Feb 13, 2012 7:48 am Post subject: |
|
|
Apprentice
Joined: 18 Jun 2009 Posts: 36
|
Quote: |
When you captured the failing message, did it have an attribute 'id' within an element of type 'types:IRTask'?
|
That is what I am having trouble with. Since the message is not propagated following the Soap Request node I cannot figure out how to capture the response message. (other than an external TCP trace tool but then the error never occurs.) |
|
Back to top |
|
 |
|