Author |
Message
|
KIT_INC |
Posted: Wed Nov 25, 2009 1:07 pm Post subject: BIP3705E on SOAPREPLY |
|
|
Knight
Joined: 25 Aug 2006 Posts: 589
|
I am testing web services. I have a simple flow
SOAPINPUT - compute - SOAPREPLY
The WSDL deployed to the SOAPINPUT node consist of an request - reply operation.
But I am getting this error
BIP3705E: An attempt was made to send a reply when the inbound message was a One-Way WSDL Operation.
Is a request/reply operation a 2 way operation?
Any suggestion? |
|
Back to top |
|
 |
sirsi |
Posted: Wed Nov 25, 2009 2:56 pm Post subject: |
|
|
Disciple
Joined: 11 Mar 2005 Posts: 177
|
|
Back to top |
|
 |
mgk |
Posted: Thu Nov 26, 2009 1:17 am Post subject: |
|
|
 Padawan
Joined: 31 Jul 2003 Posts: 1642
|
Quote: |
BIP3705E: An attempt was made to send a reply when the inbound message was a One-Way WSDL Operation. |
Post your WSDL if you can. This message should only occur if the WSDL operation is defined as One-Way...
Kind Regards, _________________ 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 |
|
 |
KIT_INC |
Posted: Thu Nov 26, 2009 6:06 am Post subject: |
|
|
Knight
Joined: 25 Aug 2006 Posts: 589
|
This is the WSDL dropped into the SOAPInput node. It was created from the message set, using the generate WSDL wizard, in the 61 toolkit.
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="www.ctc.ws" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="SOAP_TEST_2W_MS" targetNamespace="www.ctc.ws">
<wsdl:documentation>
<wsdl:appinfo source="WMQI_APPINFO">
<MRWSDLAppInfo imported="true">
<binding hasEncoding="false" imported="true" name="SOAP_TEST_MSSOAP_HTTP_Binding" originalBindingStyle="document"/>
</MRWSDLAppInfo>
</wsdl:appinfo>
</wsdl:documentation>
<wsdl:types>
<xsd:schema xmlns:mrm="www.ctc.ws" targetNamespace="www.ctc.ws" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:include schemaLocation="ws/ctc/www/CUST_REPLY_WSDLGenWrapper.mxsd"/>
<xsd:include schemaLocation="ws/ctc/www/CUST_INQ_WSDLGenWrapper.mxsd"/>
<xsd:include schemaLocation="ws/ctc/www/CUST_ERR_WSDLGenWrapper.mxsd"/>
</xsd:schema>
</wsdl:types>
<wsdl:message name="INQ_2W_in">
<wsdl:part element="tns:msg_CUST_INQ" name="msg_CUST_INQ"/>
</wsdl:message>
<wsdl:message name="INQ_2W_out">
<wsdl:part element="tns:msg_CUST_REPLY" name="msg_CUST_REPLY"/>
</wsdl:message>
<wsdl:message name="INQ_2W_fault1">
<wsdl:part element="tns:msg_CUST_ERR" name="msg_CUST_ERR"/>
</wsdl:message>
<wsdl:portType name="SOAP_TEST_MSPortType">
<wsdl:operation name="INQ_2W">
<wsdl:input message="tns:INQ_2W_in" name="INQ_2W_Input"/>
<wsdl:output message="tns:INQ_2W_out" name="INQ_2W_Output"/>
<wsdl:fault message="tns:INQ_2W_fault1" name="INQ_2W_Fault"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="SOAP_TEST_MSSOAP_HTTP_Binding" type="tns:SOAP_TEST_MSPortType">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="INQ_2W">
<soap:operation soapAction=""/>
<wsdl:input name="INQ_2W_Input">
<soap:body parts="msg_CUST_INQ" use="literal"/>
</wsdl:input>
<wsdl:output name="INQ_2W_Output">
<soap:body parts="msg_CUST_REPLY" use="literal"/>
</wsdl:output>
<wsdl:fault name="INQ_2W_Fault">
<soap:fault name="INQ_2W_Fault" use="literal"/>
</wsdl:fault>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="SOAP_TEST_MSSOAP_HTTP_Service">
<wsdl:port binding="tns:SOAP_TEST_MSSOAP_HTTP_Binding" name="SOAP_HTTP_Port">
<soap:address location="http://localhost:7800/SOAP_TEST_2W"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions> |
|
Back to top |
|
 |
KIT_INC |
Posted: Thu Nov 26, 2009 6:11 am Post subject: |
|
|
Knight
Joined: 25 Aug 2006 Posts: 589
|
One more thing I want to mentioned is the Input message I used for testing is generated by the test client. I was using nettool to send the message to the message flow. I am not sure if any additional header is needed to be added to nettool before I sent the request. Is there any indicator in the header that tells the broker it is a one way or two way operation? |
|
Back to top |
|
 |
KIT_INC |
Posted: Thu Nov 26, 2009 6:56 am Post subject: |
|
|
Knight
Joined: 25 Aug 2006 Posts: 589
|
I used the mtest client to debug. At the break point right after the SOAPInputnode it shows
SOAP
context
operation INQ
operation_type ONE_WAY
:
This is strange, The Operation in my WSDL is INQ_2W why it is showing INQ and it does have a type of ONE_WAY which I think is the cause of the error.
Any comments ? |
|
Back to top |
|
 |
mgk |
Posted: Thu Nov 26, 2009 8:36 am Post subject: |
|
|
 Padawan
Joined: 31 Jul 2003 Posts: 1642
|
Hi
Are you sure that the WSDL posted above is correct (by correct I mean is it the one the node is using), as it does not seem to match what the context says about the operation name and the MEP (one-way)? Do you have another WSDL with an operation called INQ that is one way (maybe used by another SOAP Input node)? If not something odd is happening and you need to raise a PMR...
Kind regards, _________________ 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 |
|
 |
KIT_INC |
Posted: Thu Nov 26, 2009 9:09 am Post subject: |
|
|
Knight
Joined: 25 Aug 2006 Posts: 589
|
That is what I was wondering too. But there is really nothing complicated in deploying the WSDL into the SOAPInput node (just drag and drop). I also verified that the properties of the SOAPInput node pages does show the right WSDL name. I agree this is PMR time. |
|
Back to top |
|
 |
mqjeff |
Posted: Fri Nov 27, 2009 4:13 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
KIT_INC wrote: |
That is what I was wondering too. But there is really nothing complicated in deploying the WSDL into the SOAPInput node (just drag and drop). I also verified that the properties of the SOAPInput node pages does show the right WSDL name. I agree this is PMR time. |
It is in your best interests, if you open a PMR, to mention this thread in the PMR.
And to take a full user trace of the web service call.
And, if possible, to construct a .msgtest file that can reliably generate the error. |
|
Back to top |
|
 |
|