Author |
Message
|
simon.starkie |
Posted: Mon Oct 22, 2007 7:24 pm Post subject: WMB6: Web Service URL with ?wsdl gets BIP3113E instead of WS |
|
|
Disciple
Joined: 24 Mar 2002 Posts: 180
|
I have a message flow exposed as a web service via the IA90 support pack.
I can access this web service with a RAD6 Web Service Client using the following URL:
http://ktazd2242.crdc.simon.org:52026/SimonChartService
One of the things you are supposed to be able to do with a web service is discovery of it's WSDL.
One way of doing this is by appending the ?wsdl operation to the URL and submitting that to a browser as follows:
http://ktazd2242.crdc.simon.org:52026/SimonChartService?wsdl
But when I do that, I get the following fault:
<?xml version="1.0" encoding="UTF-8" ?>
- <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
- <SOAP-ENV:Body>
- <SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Server</faultcode>
<faultstring>BIP3113E: Exception detected in message flow ws__SimonChartService (broker TACNIB01_BROKER)</faultstring>
<faultactor>HTTP:/SimonChartService</faultactor>
- <detail>
<text>Exception. BIP2230E: Error detected whilst processing a message in node 'SimonChartServiceFlow.ws__SimonChartService_ExtractMsgBody.ws__Extract_wsdlOper'. : /build/S600_P/src/DataFlowEngine/PluginInterface/ImbJniNode.cpp: 932: ImbJniNode::evaluate: ComIbmJniNode: SimonChartServiceFlow#FCMComposite_1_2.gen/SimonChartService_Gen_Front_Subflow#FCMComposite_1_1 BIP5009E: XML Parsing Errors have occurred. : /build/S600_P/src/MTI/MTIforBroker/GenXmlParser3/ImbGenericXmlParser.cpp: 330: ImbGenericXmlParser::parseFirstChild: : BIP5004E: XML parsing error ('Invalid document structure ') encountered on line 1 column 1 while parsing element 'XMLNSC'. : /build/S600_P/src/MTI/MTIforBroker/GenXmlParser3/ImbGenericXmlAsgardParser.cpp: 951: ImbGenericXmlAsgardParser::error: ComIbmWSInputNode: SimonChartServiceFlow#FCMComposite_1_1</text>
</detail>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Looks like it's breaking in the IA90 generated subflow.
Is there anything I can do to fix this?
Thanks!
Thanks. |
|
Back to top |
|
 |
mgk |
Posted: Tue Oct 23, 2007 1:32 am Post subject: |
|
|
 Padawan
Joined: 31 Jul 2003 Posts: 1642
|
Message Broker does not support the ?wsdl syntax for obtaining the wsdl. _________________ MGK
The postings I make on this site are my own and don't necessarily represent IBM's positions, strategies or opinions. |
|
Back to top |
|
 |
simon.starkie |
Posted: Tue Oct 23, 2007 4:32 am Post subject: |
|
|
Disciple
Joined: 24 Mar 2002 Posts: 180
|
mgk wrote: |
Message Broker does not support the ?wsdl syntax for obtaining the wsdl. |
Thanks for answering my question. Any plans to add this capability in the future?
*EDIT* removed comment about AP.
Last edited by simon.starkie on Thu Oct 25, 2007 8:54 am; edited 1 time in total |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue Oct 23, 2007 5:59 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
You can put a compute node between the HTTPInput node and the SOAPExtract node, in which you confirm or deny that the request URL includes ?wsdl
And then react accordingly. This will include the fun job of retrieving the wsdl itself from somewhere and then returning it. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
simon.starkie |
Posted: Tue Oct 23, 2007 3:32 pm Post subject: |
|
|
Disciple
Joined: 24 Mar 2002 Posts: 180
|
jefflowrey wrote: |
You can put a compute node between the HTTPInput node and the SOAPExtract node, in which you confirm or deny that the request URL includes ?wsdl
And then react accordingly. This will include the fun job of retrieving the wsdl itself from somewhere and then returning it. |
Gee Jeff, do you happen have any old WSDL laying around I could maybe borrow
OK, just kidding. And we are doing top-down (from WSDL) development anyway
CHEERS  |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue Oct 23, 2007 4:56 pm Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
My main points are a) you have fairly good control over the processing of any given HTTP request, regardless of whether it's SOAP or not, and b) broker has decent facilities for retrieving data of any kind from various places, including databases, and returning that data in an HTTP Response.
And third - as mgk said - broker doesn't store WSDLs anywhere in the runtime - you'll have to do that yourself. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
|