You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Enric Jaen <en...@yahoo.es> on 2008/04/09 11:45:48 UTC
possible bug in Sandesha with AckRequested response ?
Hi,
when Axis2 receives an RM request with an AckRequested header block, the AckRequestedProcessor.processAckRequestedHeader invokes the AxisEngine.send() and then tries to set setResponseWritten(true), but here comes the problem, as it doesn't find the RequestResponseTransport, so it cannot put setResponseWritten to true, and later on the SequenceProcessor wrongly thinks that the AckResp has not been sent and sends it again the AckResp doing sendAckNow()
, throwing an:
org.apache.axis2.AxisFault: Sandesha2 got an exception when processing an in message: java.lang.IllegalStateException: Response already committed.
I think that the problem is that normally the "In" MessageContext inside RequestResponseTransport is set after the Dispatch phase (specificaly in checkPostConditions), but the AckRequestedProcessor handler is executed *before* finishing the Dispatch phase, so the "in" MessageContext has not been set yet.
Has any faced this before? Is this a BUG?
Thanks for any help,
Best
/Enric
______________________________________________
¿Con Mascota por primera vez? Sé un mejor Amigo. Entra en Yahoo! Respuestas http://es.answers.yahoo.com/info/welcome
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-user-help@ws.apache.org