Author |
Message
|
achocks |
Posted: Wed Sep 19, 2012 1:09 pm Post subject: SOAPInput & SOAP Reply Node - SOAP Handle Error |
|
|
Voyager
Joined: 28 Nov 2011 Posts: 82
|
Need your help..Lost alomst 3 days with this issue..
Here is my flow skeleton
SOAPInputNode --> FileReadNode --> FileOutPutNode --> SOAPReplyNode
SOAPInputNode has all the following terminals (Failure, Catch and Timeout) connected to Error logging flow.
Idea behind is, get a SOAP request to the SOAPInput node and based on the input values, take the file name and file directory from the incoming SOAP message and move the file to the directory specified and reply a success reply back on moving the file sucessfully.
The issue I have is, the message comes in, and when I cheked..there are no exception till it goes to SOAPReplyNode ..The reply is also sent to the user back sucessfully.BUT for some reason, the control is coming back to the SOAPInputNode's CATCH terminal and goes to the Error Handling flow. [Note the Error Handling Flow has a SOAP Reply Node for failures and faults]
I watched the SOAP Reply Indentifier is passed on from the SOAP Input Node tol the SOAP ReplyNode through the Local Environment variables.
Here is the error I an getting
Any help would be greatly appreciated.
Code: |
Need your help..Lost alomst 3 days with this issue...Any help would be greatly appreciated.
Here is my flow skeleton
SOAPInputNode --> FileReadNode --> FileOutPutNode --> SOAPReplyNode
SOAPInputNode has all the following terminals (Failure, Catch and Timeout) connected to Error logging flow.
Idea behind is, get a SOAP request to the SOAPInput node and based on the input values, take the file name and file directory from the incoming SOAP message and move the file to the directory specified and reply a success reply back.
The issue I have is, the message comes in, no exception till it goes to SOAPReplyNode ..The reply is also sent to the user back sucessfully.
BUT for some reason, the control is coming back to the SOAPInputNode's CATCH terminal and goes to the Error Handling flow.
The watched the SOAPReply Indentifier is passed on till the SOAPReplyNode through the Local Environment variables.
Here is the error I got.
.
RecoverableException
File:CHARACTER:F:\build\S700_P\src\DataFlowEngine\ImbDataFlowNode.cpp
Line:INTEGER:1073
Function:CHARACTER:ImbDataFlowNode::createExceptionList
Type:CHARACTER:ComIbmSOAPInputNode
Name:CHARACTER:com/xxxxxx/filexfer/hub/main/FileXferMainFlow#FCMComposite_1_4.com/xxxxxx/filexfer/hub/utility/SF_ReceiveRequest#FCMComposite_1_3
Label:CHARACTER:com.xxxxxx.filexfer.hub.main.FileXferMainFlow.SF_ReceiveRequest.SOAP Input1
Catalog:CHARACTER:BIPmsgs
Severity:INTEGER:3
Number:INTEGER:2230
Text:CHARACTER:Node throwing exception
RecoverableException
File:CHARACTER:F:\build\S700_P\src\WebServices\WSLibrary\ImbSOAPReplyNode.cpp
Line:INTEGER:386
Function:CHARACTER:ImbSOAPReplyNode::evaluate
Type:CHARACTER:ComIbmSOAPReplyNode
Name:CHARACTER:com/xxxxxx/filexfer/hub/main/FileXferMainFlow#FCMComposite_1_4.com/xxxxxx/filexfer/hub/utility/SF_ReceiveRequest#FCMComposite_1_5
Label:CHARACTER:com.xxxxxx.filexfer.hub.main.FileXferMainFlow.SF_ReceiveRequest.SOAP Reply
Catalog:CHARACTER:BIPmsgs
Severity:INTEGER:3
Number:INTEGER:3752
Text:CHARACTER:Error occurred in ImbSOAPReplyHelper::makeSOAPReply()
RecoverableException
File:CHARACTER:F:\build\S700_P\src\WebServices\WSLibrary\ImbSOAPReplyHelper.cpp
Line:INTEGER:260
Function:CHARACTER:ImbSOAPReplyHelper::makeSOAPReply
Type:CHARACTER:
Name:CHARACTER:
Label:CHARACTER:
Catalog:CHARACTER:BIPmsgs
Severity:INTEGER:3
Number:INTEGER:3745
Text:CHARACTER:Message does not contain a valid SOAP Reply Identifier. Invalid Handle
Insert
Type:INTEGER:5
Text:CHARACTER:534f41500000000005000000000000005416000000000000
Insert
Type:INTEGER:5
Text:CHARACTER:com/xxxxxx/filexfer/hub/main/FileXferMainFlow#FCMComposite_1_4.com/xxxxxx/filexfer/hub/utility/SF_ReceiveRequest#FCMComposite_1_5
Insert
Type:INTEGER:5
Text:CHARACTER:SOAP
Insert
Type:INTEGER:5
Text:CHARACTER:ReplyIdentifier
RecoverableException
File:CHARACTER:F:\build\S700_P\src\WebServices\WSLibrary\ImbSOAPHandleManager.cpp
Line:INTEGER:1385
Function:CHARACTER:ImbInFlightMessageHandle::throwHandleException
Type:CHARACTER:
Name:CHARACTER:
Label:CHARACTER:
Catalog:CHARACTER:BIPmsgs
Severity:INTEGER:3
Number:INTEGER:3742
Text:CHARACTER:ERROR, Handle Reused after reply sent.
Insert
Type:INTEGER:5
Text:CHARACTER:534f41500000000005000000000000005416000000000000
Insert
Type:INTEGER:5
Text:CHARACTER:SOAP
Insert
Type:INTEGER:5
Text:CHARACTER:ReplyIdentifier
|
|
|
Back to top |
|
 |
fjb_saper |
Posted: Wed Sep 19, 2012 5:30 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
The error is clear:
Code: |
Text:CHARACTER:ERROR, Handle Reused after reply sent. |
You have already used the value in a soap reply. You cannot use the reply identifier twice.  _________________ MQ & Broker admin |
|
Back to top |
|
 |
achocks |
Posted: Wed Sep 19, 2012 6:08 pm Post subject: Thanks!..But still got stuck! |
|
|
Voyager
Joined: 28 Nov 2011 Posts: 82
|
Thanks...I understand that it is trying to use the Failure's SOAP Reply also after using the Success Reply..But I am trying to fgure out why it is propagating to the Catch terminal of the SOAP input which leads to the Error Handler after the reply is completed.
Any ideas?
Thanks in advance! |
|
Back to top |
|
 |
mgk |
Posted: Thu Sep 20, 2012 12:23 am Post subject: |
|
|
 Padawan
Joined: 31 Jul 2003 Posts: 1642
|
Well the Input node will only ever propagate to the Catch terminal if there is an exception. Therefore, there must be an exception thrown somewhere after the first SOAPReply node. You could put a Trace node down the Catch terminal before the second SOAPReply node and trace the ExceptionList to see what it is...
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 |
|
 |
smdavies99 |
Posted: Thu Sep 20, 2012 6:15 am Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
Quote: |
Text:CHARACTER:ERROR, Handle Reused after reply sent.
|
That tells me that you have already sent a reply to the request and are trying to reuse a now stale connection handle. _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
 |
Esa |
Posted: Thu Sep 20, 2012 11:35 pm Post subject: |
|
|
 Grand Master
Joined: 22 May 2008 Posts: 1387 Location: Finland
|
smdavies99 wrote: |
Quote: |
Text:CHARACTER:ERROR, Handle Reused after reply sent.
|
That tells me that you have already sent a reply to the request and are trying to reuse a now stale connection handle. |
What do you have for Record detection in the Records and Elements tab of the FileRead node?
Have you connected Finish file terminal between the file nodes?
There are several ways to configure file nodes to propagate twice... |
|
Back to top |
|
 |
Ualter |
Posted: Sat Jun 07, 2014 4:51 pm Post subject: |
|
|
Newbie
Joined: 10 Sep 2013 Posts: 4
|
mgk wrote: |
Well the Input node will only ever propagate to the Catch terminal if there is an exception. Therefore, there must be an exception thrown somewhere after the first SOAPReply node. You could put a Trace node down the Catch terminal before the second SOAPReply node and trace the ExceptionList to see what it is...
Kind regards, |
Hi Mgk,
I have the same problem using the Integration Bus (Broker v9). In my case the scenario is:
Code: |
SOAP Input -> [Subflow] SOAP Request (WS) [Subflow] -> SOAP Reply |
Even though the client got the response correctly (as if nothing wrong has happened), the Node after the SOAP Reply (a simple Trace) receive the following error:
Code: |
Message does not contain a valid SOAP Reply Identifier. Invalid Handle. ERROR, Handle Reused after Reply sent. |
So, I tried to store the ReplyIdentifier before call the Subflow, and then after get it back before the SOAP Reply in the main message flow, but it didn't work. I still got this error even though nothing wrong happens to the caller of the service.
I don't get it, why I still got this error after the SOAP Reply, it seems that it's complaining about reusing the same Reply Identifier, but I just have one SOAP Reply?!?!?
I appreciated any help.
Thanks.
UJR |
|
Back to top |
|
 |
fjb_saper |
Posted: Sat Jun 07, 2014 5:58 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Did you check whether the SOAP reply node itself is throwing some kind of exception?
Have you sent the timeout to the same path as the failure? Are you debugging?  _________________ MQ & Broker admin |
|
Back to top |
|
 |
Ualter |
Posted: Sat Jun 07, 2014 6:26 pm Post subject: |
|
|
Newbie
Joined: 10 Sep 2013 Posts: 4
|
Thanks for the attention.
fjb_saper wrote: |
Did you check whether the SOAP reply node itself is throwing some kind of exception? |
Actually the behaviour is, the response goes throughout the Out Terminal of the SOAP Reply (sending the response to the caller correctly as expected), but then... the Failure Terminal of the SOAP Reply also gets into action and show the error that I mentioned before.
Quote: |
Have you sent the timeout to the same path as the failure? Are you debugging?  |
No, I'm not debugging, this option is not even turned on, to check that I still got the error (after delivery the response) I'm writing the Trace (Failure Terminal result) into a local file. |
|
Back to top |
|
 |
mqjeff |
Posted: Mon Jun 09, 2014 5:28 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
So your code somewhere has an additional propagate or an ESQL return true (or a failure to return false).
Or a mapping node that creates an additional output message.
Or otherwise, miraculous, you have coded your flow such that two messages are received by the SOAPReply node. One of them wellformed with the right ReplyID, and one of them mostly empty. |
|
Back to top |
|
 |
Harsha_AS |
Posted: Mon Jun 05, 2017 1:46 pm Post subject: |
|
|
Apprentice
Joined: 04 Dec 2011 Posts: 26
|
Did anyone found the solution for this. Even I am facing the same issue. |
|
Back to top |
|
 |
mqjeff |
Posted: Tue Jun 06, 2017 3:51 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
Harsha_AS wrote: |
Did anyone found the solution for this. Even I am facing the same issue. |
What are the solutions given here?
Have you tried them?
Are you sure it's the same issue? _________________ chmod -R ugo-wx / |
|
Back to top |
|
 |
|