Author |
Message
|
xzhou |
Posted: Tue Oct 09, 2012 10:23 am Post subject: soap req message parsing problem |
|
|
Apprentice
Joined: 11 Apr 2008 Posts: 32
|
Hi,
using WMB 8.0.0.1 to develop a WS flow.
using SOAP UI
request.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:cour="http://a.webservice.b.ca/info">
<soapenv:Header/>
<soapenv:Body>
<cour:getCourseInfo>
<academicActivityCode>XYZ200Y1</academicActivityCode>
<startSessionCode>19711</startSessionCode>
<sectionCode>11</sectionCode>
</cour:getCourseInfo>
</soapenv:Body>
</soapenv:Envelope>
Response
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<soapenv:Fault>
<faultcode>soapenv:Server</faultcode>
<faultstring>BIP3113E: Exception detected in message flow InfoFlow.SOAP Input (broker MB8BROKER)</faultstring>
<detail>
<Text>BIP2230E: Error detected whilst processing a message in node 'CourseInfoFlow.Incoming Trace'.
The message broker detected an error whilst processing a message in node 'CourseInfoFlow.Incoming Trace'. An exception has been thrown to cut short the processing of the message.
See the following messages for details of the error. : F:\build\slot1\S800_P\src\DataFlowEngine\ImbTraceNode.cpp: 362: ImbTraceNode::evaluate: ComIbmTraceNode: CourseInfoFlow#FCMComposite_1_3
BIP3614E: A SOAP logical tree cannot be built from the message bitstream.
The bitstream is not a valid Web service message.
Review further error messages for an indication to the cause of the error. : F:\build\slot1\S800_P\src\WebServices\WSLibrary\ImbSOAPParser.cpp: 2062: ImbSOAPParser::createSoapShapedTree: :
BIP5009E: XML Parsing Errors have occurred.
Errors have occurred during parsing of XML.
Review further error messages for an indication to the cause of the errors. : F:\build\slot1\S800_P\src\MTI\MTIforBroker\GenXmlParser4\ImbXMLNSCParser.cpp: 1005: ImbXMLNSCParser::parseFirstChild: :
BIP5025E: XML schema validation error ''Unexpected root tag. Element "soapenv:Envelope" is not a global element.'' on line '1' column '136' when parsing element ''/XMLNSC''.
Internal error codes: 5032, 2.
This error was reported by the XMLNSC parser. The XML document being parsed is not valid according to the message definitions in the message set.
The XML document has violated the rules expressed in the message definition files in the message set. : F:\build\slot1\S800_P\src\MTI\MTIforBroker\GenXmlParser4\ImbXMLNSCDocHandler.cpp: 702: ImbXMLNSCDocHandler::handleParseErrors: ComIbmSOAPInputNode: CourseInfoFlow#FCMComposite_1_1</Text>
</detail>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
I developed and run another similar webservice flow on the same environment, but it only contains 1 operation in service, it is fine without any problems.
this service has 3 operations, it failed with errors above.
Any idea/help is appreciated!
Thanks, XZ |
|
Back to top |
|
 |
lancelotlinc |
Posted: Tue Oct 09, 2012 10:59 am Post subject: |
|
|
 Jedi Knight
Joined: 22 Mar 2010 Posts: 4941 Location: Bloomington, IL USA
|
|
Back to top |
|
 |
Vitor |
Posted: Tue Oct 09, 2012 11:18 am Post subject: Re: soap req message parsing problem |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
xzhou wrote: |
Any idea/help is appreciated! |
Well...
xzhou wrote: |
The XML document being parsed is not valid according to the message definitions in the message set. |
....that seems to be a clue. Or as we say round here, "the reason".
The response message is not valid, i.e. does not match the definition in the WSDL. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
NealM |
Posted: Tue Oct 09, 2012 11:27 am Post subject: |
|
|
 Master
Joined: 22 Feb 2011 Posts: 230 Location: NC or Utah (depends)
|
....ummm.....
did you remember to include a message definition for org.xmlsoap.schemas.soap.envelope in your message set? It's one of the IBM supplied messages.
And by the way, a more standard way of setting up a request/reply XML and schema would be to have a request called getCourseInfoRequest, with a response called getCourseInfoResponse |
|
Back to top |
|
 |
xzhou |
Posted: Tue Oct 09, 2012 11:48 am Post subject: |
|
|
Apprentice
Joined: 11 Apr 2008 Posts: 32
|
Thanks. soapenv11.xsd was not generated in the application automatically. it was there in my previous flow application. I used same way of creating and configuring application and SOAP Input node. I guess I need open a PMR.
BTW, is it ok? if I copy it into my application manually in this case.
Thanks, XZ |
|
Back to top |
|
 |
NealM |
Posted: Tue Oct 09, 2012 11:58 am Post subject: |
|
|
 Master
Joined: 22 Feb 2011 Posts: 230 Location: NC or Utah (depends)
|
Quote: |
Thanks. soapenv11.xsd was not generated in the application automatically. it was there in my previous flow application. I used same way of creating and configuring application and SOAP Input node. I guess I need open a PMR. |
It ain't an automatic. If you create an XML message set that needs to include a SOAP envelope because it is part of the message sent (or received), Do this:
-Right click on your Message set's Message Definitions tag
-Select New->Message Definition File From->IBM Supplied Message
-Select the appropriate choice of the two SOAP Envelopes provided.
--Do not open a PMR. You can get abused in more places than in this forum. |
|
Back to top |
|
 |
xzhou |
Posted: Tue Oct 09, 2012 12:06 pm Post subject: |
|
|
Apprentice
Joined: 11 Apr 2008 Posts: 32
|
Quote: |
create an XML message set that needs to include a SOAP envelope because it is part of the message sent |
I think "message set" is not required in WMB v8, I used a wsdl to create a web service application, and drop a wsdl onto a SOAP input node. both soap.xsd and soapenv11.xsd are created automatically in my previous application. but anyhow soap.xsd was only created in this application in this case.
Thanks, XZ |
|
Back to top |
|
 |
lancelotlinc |
Posted: Tue Oct 09, 2012 12:18 pm Post subject: |
|
|
 Jedi Knight
Joined: 22 Mar 2010 Posts: 4941 Location: Bloomington, IL USA
|
NealM wrote: |
--Do not open a PMR. You can get abused in more places than in this forum. |
That is absolutely correct.
Quote: |
When contacting IBM Software Support it is important to understand what support is available through IBM: Specific product questions: If you have been trained on the product, you can submit specific questions or concerns. |
One should not open PMRs for "how-to" unless you have been fully trained on the product. _________________ http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER |
|
Back to top |
|
 |
mqjeff |
Posted: Tue Oct 09, 2012 12:24 pm Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
The error is telling you that the request message is bad.
But it's not possible to tell why from what you have posted.
Again, please use the "[code]" tags to wrap anything that is technical data, so that we can properly read it without it being reformatted.
You might investigate the Toolkit's TCP/IP Monitor debugging tool to see if you can use that to capture the incoming http document before it gets to the SOAPInput node. |
|
Back to top |
|
 |
xzhou |
Posted: Tue Oct 09, 2012 12:34 pm Post subject: |
|
|
Apprentice
Joined: 11 Apr 2008 Posts: 32
|
Just copy it over and redeploy it. it works now.
Thanks, XZ |
|
Back to top |
|
 |
NealM |
Posted: Tue Oct 09, 2012 1:26 pm Post subject: |
|
|
 Master
Joined: 22 Feb 2011 Posts: 230 Location: NC or Utah (depends)
|
mqjeff, actually xzhou did post enough info to diagnose:
Code: |
BIP5025E: XML schema validation error ''Unexpected root tag. Element "soapenv:Envelope" is not a global element.'' on line '1' column '136' when parsing element ''/XMLNSC''.
Internal error codes: 5032, 2.
This error was reported by the XMLNSC parser. The XML document being parsed is not valid according to the message definitions in the message set.
|
...which is why I suggested that he was missing the soapenv11.xsd piece in his message set (or its schema equivalent in MB8, which by the error message certainly acts like a message set ) |
|
Back to top |
|
 |
|