Author |
Message
|
andy1989 |
Posted: Fri Mar 08, 2013 12:51 am Post subject: Soap request - Operation Mismatch [MB 7.0.0.3] |
|
|
Novice
Joined: 07 Jan 2013 Posts: 22
|
Hello,
I have a flow with common SoapRequest Node:
Input ---- SoapRequest ---- Trace ---- Output
This flow is used for invoking a few operations.
SoapRequest has set default operation: 'modifyObject'
For my operation 'addNotification'I set 2 parameters:
OutputRoot.HTTPRequestHeader.SOAPAction
and
OutputLocalEnvironment.Destination.SOAP.Request.Operation
Request works but the problem is with the response:
Code: |
Mar 8 08:45:52 SzynaDEV user:err|error WebSphere Broker v7002[553104]: (MBGSG02.saptrans2gis)[3092]BIP3601E: Operation mismatch. The SOAP payload '{http://www.nsnm.coml/MyService/}addNotificationResponse' corresponds to operation 'addNotification' in WSDL binding 'MyServiceSOAP', but the operation was previously specified as 'modifyObject'. : MBGSG02.1dbaef48-3d01-0000-0080-fd20b69551f5: /build/S700_P/src/WebServices/WSLibrary/ImbSOAPParser.cpp: 1707: ImbSOAPParser::createSoapShapedTree: :
|
Event there is no full content in Log (Trace node: {Root}) - only response Properties,Headers , but without SOAP body
Of course when i put separate SOAPRequest for each operation - it works properly. But i would like to use this node dynamically.
How to solve my problem?
Andy |
|
Back to top |
|
 |
fjb_saper |
Posted: Fri Mar 08, 2013 2:27 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Your wsdl defines for each action a specific payload. You need to dynamically match the action to the payload. Go back to your wsdl definition ... or request the ?wsdl at the end of your url...  _________________ MQ & Broker admin |
|
Back to top |
|
 |
andy1989 |
Posted: Fri Mar 08, 2013 3:22 am Post subject: |
|
|
Novice
Joined: 07 Jan 2013 Posts: 22
|
Action is setting accordingly to the payload.
Now i find , probably the right way is wsitching SOAPRequest to 'Gateway' mode.
A. |
|
Back to top |
|
 |
lancelotlinc |
Posted: Mon Mar 11, 2013 4:42 am Post subject: |
|
|
 Jedi Knight
Joined: 22 Mar 2010 Posts: 4941 Location: Bloomington, IL USA
|
andy1989 wrote: |
Action is setting accordingly to the payload.
Now i find , probably the right way is wsitching SOAPRequest to 'Gateway' mode.
A. |
As a workaround or a solution? _________________ http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER |
|
Back to top |
|
 |
andy1989 |
Posted: Thu Mar 14, 2013 11:36 pm Post subject: |
|
|
Novice
Joined: 07 Jan 2013 Posts: 22
|
As a solution I guess.
I am not sure if this error is 'expected' for SOAPRequest normal mode.
Previously I did not need a response, and for that flow there wasn't an exception. |
|
Back to top |
|
 |
aurbano |
Posted: Tue Jun 11, 2013 12:21 pm Post subject: SImilar erro |
|
|
Newbie
Joined: 05 Sep 2012 Posts: 4
|
Hello andy1989.
I have 3 wsdls.
I need call one or two or tree services depends of input, I need generate the loop and ask if is necesary call each web service, for this reason is necesary change dinamic of properties the soaprequest node as WSDL file, port, and binding, and operation.
I have this properties in configuration files and depends the input I need put, but I put in gateway mode and use.
SET OutputLocalEnvironment.Destination.SOAP.Request.Transport.HTTP.WebServiceURL = 'newUrl';
SET OutputLocalEnvironment.Destination.SOAP.Request.Operation = 'operationName';
But not called to new webservice in each loop step.
Please help me for construct this feature. |
|
Back to top |
|
 |
mqjeff |
Posted: Tue Jun 11, 2013 12:26 pm Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
Have you considered simply using three SOAPRequest nodes? |
|
Back to top |
|
 |
goffinf |
Posted: Tue Jun 11, 2013 12:59 pm Post subject: |
|
|
Chevalier
Joined: 05 Nov 2005 Posts: 401
|
mqjeff wrote: |
Have you considered simply using three SOAPRequest nodes? |
A good simplifying principle that makes the intent obvious, testing straight-forward, rather than being hidden amongst spaghetti ESQL with the assumed knowledge about which specific tree locations cause what behaviours.
I would favour something along the lines of mqjeff suggestion. We all try to be too clever sometimes (me included).
Fraser. |
|
Back to top |
|
 |
|