Author |
Message
|
frikkieo |
Posted: Mon May 22, 2006 12:58 am Post subject: Discovering Broker Web Services wsdl file |
|
|
Novice
Joined: 16 Jul 2004 Posts: 13 Location: South Africa
|
Hi Guys,
I have exposed a web service through Message broker (Toolkit 6.0.0.1 interim fixpack 4 and Broker runtime 6.0.0.1).
When I use a sample program and do a direct http post with the message in the correct format, it works no problem. When the clients that are connecting to the web service run a discovery tool against the web service they fail to discover the wsdl.
Is it possible to via some discovery tool get to the wsdl, or does broker not allow the outside world to see the wsdl?
I have also imported the WSHOST sample but have the same problem with discovering the web service. Anybody had the same problem and managed to solve it? Your help is really appreciated.
Regards
Frikkie |
|
Back to top |
|
 |
jefflowrey |
Posted: Mon May 22, 2006 2:20 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Broker does not provide UDDI service.
You can put the WSDL for the broker webservice in some other UDDI, and have the clients use that for their discovery.
Or you can just give them the WSDL. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
frikkieo |
Posted: Mon May 22, 2006 2:39 am Post subject: |
|
|
Novice
Joined: 16 Jul 2004 Posts: 13 Location: South Africa
|
Thanks for the prompt reply Jeff.
I assumed as much. We have been discussing the option of exposing it through another uddi, and it seems like that would be the way to go. We have supplied the clients with the wsdl as well as the xsd files, but tehy are using some discovery method.
Thanks for confirming this for me.
Frikkie |
|
Back to top |
|
 |
LearnMQSI |
Posted: Thu Jun 15, 2006 6:06 am Post subject: |
|
|
 Centurion
Joined: 20 Aug 2002 Posts: 137
|
Hi frikkieo,
I have downloaded sample WSHOST web service application and struggling to run it. I'm using Nettool to put a message.
Though I'm not much familiar with this tool, trying to follow instructions given to run this sample.
Is there any other tool out there which I can use easily? Please forward me link for any other tool that I can use to put soap messages.
My Broker and Nettool are on the same machine(Windows 2000).
I'm new to use Web Services, so please help me out here and provide all steps in detail.
My environment is as follows:
WMQ - v6.0
WBIMB - v6.0.0.1
Your help would be highly appreciated!!!
Thank you, _________________ IBM Certified System Administrator - WebSphere MQ 5.3 |
|
Back to top |
|
 |
LearnMQSI |
Posted: Thu Jun 15, 2006 6:49 am Post subject: Using Nettool for Web Service Sample, Getting Exception |
|
|
 Centurion
Joined: 20 Aug 2002 Posts: 137
|
I have tried using Nettool and this is what I'm getting exception:
HTTP/1.1 500 Internal Server Error
Content-Type: text/xml;charset=utf-8
Content-Length: 1589
Date: Thu, 15 Jun 2006 14:44:30 GMT
Server: Apache-Coyote/1.1
Connection: close
------------------------------------
<?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 HTTP Input (broker WBRK6_DEFAULT_BROKER) </faultstring>
<faultactor>(HTTP) : /samplebrokerwshost</faultactor>
<detail>Exception. BIP2230E: Error detected whilst processing a message in node 'WSHOST_MFP1.WSHOST_WSHOST1.MQOutput to legacy'. : F:\build\S000_P\src\DataFlowEngine\ImbMqOutputNode.cpp: 769: ImbMqOutputNode::evaluate: ComIbmMQOutputNode: WSHOST_MFP1/WSHOST_WSHOST1#FCMComposite_1_3
BIP5286E: Message Translation Interface Writing Errors have occurred: : F:\build\S000_P\src\MTI\MTIforBroker\MtiImbParser2\MtiImbParser.cpp: 1711: MtiImbParser::refreshBitStreamFromElements - 9 par: ComIbmWSInputNode: WSHOST_MFP1/WSHOST_WSHOST1#FCMComposite_1_1
BIP5167E: Custom Wire Format error while parsing/writing message ''msg_tagIA81CONF''. : F:\build\S000_P\src\cpi\pwf\cwf\cwfworker.cpp: 412: CWFWorker::write: :
BIP5350E: Custom Wire Format writing error. While writing the message quoted above, the CWF writer encountered an error. : F:\build\S000_P\src\cpi\pwf\cwf\cwfmessage.cpp: 606: CMessage::write: :
BIP5344E: CWF Output: Mismatch between logical definition and message tree. : F:\build\S000_P\src\cpi\pwf\cwf\cwfcontext.cpp: 322: CContext::CheckDefaultValue: : </detail>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
---------------------
Here is what I'm using on Nettool:
Type = POST
URL = http://Machine_Name:7080/samplebrokerwshost
In HTTPInput Node URL Selector* = /samplebrokerwshost
Please help me out here!!! _________________ IBM Certified System Administrator - WebSphere MQ 5.3 |
|
Back to top |
|
 |
jefflowrey |
Posted: Thu Jun 15, 2006 7:31 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
What data are you sending? _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
LearnMQSI |
Posted: Thu Jun 15, 2006 9:57 am Post subject: |
|
|
 Centurion
Joined: 20 Aug 2002 Posts: 137
|
Here is the input xml message that I'm trying to send
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope"
xmlns:c="http://www.brokersamplewshost.ibm.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<c:IA81CONFIN>
<MessageId>IA81CONF</MessageId>
<OrderNumber>ON4002</OrderNumber>
<ItemReference>IY4003</ItemReference>
<ItemQuantity>4</ItemQuantity>
<CustomerNumber>CY4004</CustomerNumber>
<DeliveryRef></DeliveryRef>
<Confirm></Confirm>
</c:IA81CONFIN>
</soapenv:Body>
</soapenv:Envelope> _________________ IBM Certified System Administrator - WebSphere MQ 5.3 |
|
Back to top |
|
 |
TonyD |
Posted: Thu Jun 15, 2006 12:49 pm Post subject: |
|
|
Knight
Joined: 15 May 2001 Posts: 540 Location: New Zealand
|
I don't know if this will solve your problem but I found that to use NetTool successfully it was necessary to add two headers:
Name: SOAPAction Value: ''
Name: Host Value: LocalHost (or 127.0.0.1)
With these added I have had no problem submitting requests to both local and remote flows. |
|
Back to top |
|
 |
jefflowrey |
Posted: Thu Jun 15, 2006 12:57 pm Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
the errors you are seeing are complaining about the operations at the MQOutput node where it is trying to build the output bitstream using the CWF parser. The reason it is complaining is because, for whatever reason, the logical message tree you are passing to the CWF parser does not match the message model that the CWF parser wants.
So I think, very strongly but not 100%, that it is not entirely an issue with using NetTool to submit your WS request, but rather with either the data in that request or with the flow after you receive the request.
I would start by using the debugger or usertrace to watch the message flow itself. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
Bill.Matthews |
Posted: Thu Jun 15, 2006 1:01 pm Post subject: |
|
|
 Master
Joined: 23 Sep 2003 Posts: 232 Location: IBM (Retired)
|
In you posting of the fault message being returned - it shows: BIP5167E: Custom Wire Format error while parsing/writing message ''msg_tagIA81CONF''.
However, in the SOAP message the Body starts with <c:IA81CONFIN>
This is your error. The tags don't match.
It appears that you built your message using the Cobol importer - since the first part of the high level tag name contains "msg_" _________________ Bill Matthews |
|
Back to top |
|
 |
LearnMQSI |
Posted: Mon Jun 19, 2006 3:11 pm Post subject: |
|
|
 Centurion
Joined: 20 Aug 2002 Posts: 137
|
TonyD wrote: |
I don't know if this will solve your problem but I found that to use NetTool successfully it was necessary to add two headers:
Name: SOAPAction Value: ''
Name: Host Value: LocalHost (or 127.0.0.1)
With these added I have had no problem submitting requests to both local and remote flows. |
Hi TonyD,
Could you please send me how did you add those two headers. I want to try it.
Thank you, _________________ IBM Certified System Administrator - WebSphere MQ 5.3 |
|
Back to top |
|
 |
TonyD |
Posted: Mon Jun 19, 2006 6:43 pm Post subject: |
|
|
Knight
Joined: 15 May 2001 Posts: 540 Location: New Zealand
|
The HTTP Sender window has a button 'Add New Header'. When you select this you will see a new line appear in the top left 'Name/Value' pane (where you see 'Content-Length etc.). Backspace over 'New Header' and type in SOAPAction' and then move to the adjoining column and type ''. Then create a second header with 'Host' in the left hand column and 'localhost' in the right hand column. |
|
Back to top |
|
 |
|