You are viewing a plain text version of this content. The canonical link for it is here.
Posted to sandesha-dev@ws.apache.org by Jerome Camilleri <je...@bull.net> on 2007/06/22 15:17:39 UTC
SOAPMonitor Axis2 phases and Sandesha acknowledgement
Hi,
I try to configure SOAPMonitor.mar on my project to debug my application
using Axis2 1.2 and Sandesha2 1.2.
All my request is catch by SOAPMonitor but on the server response wsrm
tag are missing...
I try to change into Axis2.xml file the OutFlow phase to call
soapmonitorPhase after RMPhase like you can see on the fill below but I
never saw the SequenceAcknowledgement into the server response (I'm sure
that the response containe it because I had configure tcpmon beetween
Source and Destination).
<?xml version='1.0' encoding='utf-8'?>
<soapenv:Envelope xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
<soapenv:Header>
<wsa:MessageID>urn:uuid:E20181888A297B3C631182512256075</wsa:MessageID>
<wsa:Action></wsa:Action>
<wsa:RelatesTo>urn:uuid:22075684A97A8D05F41182512253019</wsa:RelatesTo>
</soapenv:Header>
<soapenv:Body>
...
</soapenv:Body>
</soapenv:Envelope>
When I used tcpmon the reponse is correct and contain wsrm tags :
<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
<soapenv:Header>
<wsa:MessageID>urn:uuid:E20181888A297B3C631182512249456</wsa:MessageID>
<wsa:Action></wsa:Action>
<wsa:RelatesTo>urn:uuid:22075684A97A8D05F41182512245205</wsa:RelatesTo>
<wsrm:Sequence
xmlns:wsrm="http://schemas.xmlsoap.org/ws/2005/02/rm"
soapenv:mustUnderstand="true">
<wsrm:Identifier>uid1182512244847</wsrm:Identifier>
<wsrm:MessageNumber>1</wsrm:MessageNumber>
</wsrm:Sequence>
<wsrm:SequenceAcknowledgement
xmlns:wsrm="http://schemas.xmlsoap.org/ws/2005/02/rm"
soapenv:mustUnderstand="true">
<wsrm:Identifier>urn:uuid:E20181888A297B3C631182512248038</wsrm:Identifier>
<wsrm:AcknowledgementRange Lower="1" Upper="1" />
</wsrm:SequenceAcknowledgement>
</soapenv:Header>
<soapenv:Body>
...
</soapenv:Body>
</soapenv:Envelope>
Someone have an explaination about this pleased ?
Regards
Jérôme
Extract of Axis2.xml:
...
<!-- ================================================= -->
<!-- Phases -->
<!-- ================================================= -->
<phaseOrder type="InFlow">
<!-- System pre defined phases -->
<phase name="Transport">
<handler name="RequestURIBasedDispatcher"
class="org.apache.axis2.engine.RequestURIBasedDispatcher">
<order phase="Transport"/>
</handler>
<handler name="SOAPActionBasedDispatcher"
class="org.apache.axis2.engine.SOAPActionBasedDispatcher">
<order phase="Transport"/>
</handler>
</phase>
<phase name="Security"/>
<phase name="PreDispatch"/>
<phase name="Dispatch"
class="org.apache.axis2.engine.DispatchPhase">
<handler name="AddressingBasedDispatcher"
class="org.apache.axis2.engine.AddressingBasedDispatcher">
<order phase="Dispatch"/>
</handler>
<handler name="SOAPMessageBodyBasedDispatcher"
class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher">
<order phase="Dispatch"/>
</handler>
<handler name="InstanceDispatcher"
class="org.apache.axis2.engine.InstanceDispatcher">
<order phase="Dispatch"/>
</handler>
</phase>
<!-- System pre defined phases -->
<!-- After Postdispatch phase module author or or service
author can add any phase he want -->
<phase name="OperationInPhase"/>
<phase name="RMPhase"/>
<phase name="soapmonitorPhase"/>
</phaseOrder>
<phaseOrder type="OutFlow">
<!-- user can add his own phases to this area -->
<phase name="RMPhase"/>
<phase name="OperationOutPhase"/>
<!--system predefined phase-->
<!--these phase will run irrespective of the service-->
<phase name="PolicyDetermination"/>
<phase name="MessageOut"/>
<phase name="Security"/>
<phase name="soapmonitorPhase"/>
</phaseOrder>
<phaseOrder type="InFaultFlow">
<phase name="PreDispatch"/>
<phase name="Dispatch"
class="org.apache.axis2.engine.DispatchPhase">
<handler name="RequestURIBasedDispatcher"
class="org.apache.axis2.engine.RequestURIBasedDispatcher">
<order phase="Dispatch"/>
</handler>
<handler name="SOAPActionBasedDispatcher"
class="org.apache.axis2.engine.SOAPActionBasedDispatcher">
<order phase="Dispatch"/>
</handler>
<handler name="AddressingBasedDispatcher"
class="org.apache.axis2.engine.AddressingBasedDispatcher">
<order phase="Dispatch"/>
</handler>
<handler name="SOAPMessageBodyBasedDispatcher"
class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher">
<order phase="Dispatch"/>
</handler>
<handler name="InstanceDispatcher"
class="org.apache.axis2.engine.InstanceDispatcher">
<order phase="PostDispatch"/>
</handler>
</phase>
<!-- user can add his own phases to this area -->
<phase name="OperationInFaultPhase"/>
<phase name="soapmonitorPhase"/>
<phase name="RMPhase"/>
</phaseOrder>
<phaseOrder type="OutFaultFlow">
<phase name="soapmonitorPhase"/>
<phase name="RMPhase"/>
<!-- user can add his own phases to this area -->
<phase name="OperationOutFaultPhase"/>
<phase name="PolicyDetermination"/>
<phase name="MessageOut"/>
</phaseOrder>
</axisconfig>
Jérôme
---------------------------------------------------------------------
To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org
Re: SOAPMonitor Axis2 phases and Sandesha acknowledgement
Posted by Chamikara Jayalath <ch...@gmail.com>.
At the sender we check weather there are any Acks to be piggy backed and
thats where we add the it to outgoing msgs. So u wont see the Sequence Ack
in the handler level.
Chamikara
On 6/23/07, Chamikara Jayalath <ch...@gmail.com> wrote:
>
> Hi Jerome,
>
> Yes. This is becoz we add the Sequence header in the SenderWorker. You
> will not see the Sequence header in the handler level.
>
> Chamikara
>
>
> On 6/22/07, Jerome Camilleri <je...@bull.net> wrote:
> >
> > Hi,
> >
> > I try to configure SOAPMonitor.mar on my project to debug my application
> > using Axis2 1.2 and Sandesha2 1.2.
> > All my request is catch by SOAPMonitor but on the server response wsrm
> > tag are missing...
> > I try to change into Axis2.xml file the OutFlow phase to call
> > soapmonitorPhase after RMPhase like you can see on the fill below but I
> > never saw the SequenceAcknowledgement into the server response (I'm sure
> > that the response containe it because I had configure tcpmon beetween
> > Source and Destination).
> >
> > <?xml version='1.0' encoding='utf-8'?>
> > <soapenv:Envelope xmlns:wsa=" http://www.w3.org/2005/08/addressing"
> > xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
> > <soapenv:Header>
> > <wsa:MessageID>urn:uuid:E20181888A297B3C631182512256075</wsa:MessageID>
> >
> > <wsa:Action></wsa:Action>
> >
> > <wsa:RelatesTo>urn:uuid:22075684A97A8D05F41182512253019</wsa:RelatesTo>
> > </soapenv:Header>
> > <soapenv:Body>
> > ...
> > </soapenv:Body>
> > </soapenv:Envelope>
> >
> > When I used tcpmon the reponse is correct and contain wsrm tags :
> > <?xml version='1.0' encoding='UTF-8'?>
> > <soapenv:Envelope xmlns:wsa=" http://www.w3.org/2005/08/addressing"
> > xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
> > <soapenv:Header>
> >
> > <wsa:MessageID>urn:uuid:E20181888A297B3C631182512249456</wsa:MessageID>
> > <wsa:Action></wsa:Action>
> >
> > <wsa:RelatesTo>urn:uuid:22075684A97A8D05F41182512245205</wsa:RelatesTo>
> > <wsrm:Sequence
> > xmlns:wsrm=" http://schemas.xmlsoap.org/ws/2005/02/rm"
> > soapenv:mustUnderstand="true">
> > <wsrm:Identifier>uid1182512244847</wsrm:Identifier>
> > <wsrm:MessageNumber>1</wsrm:MessageNumber>
> > </wsrm:Sequence>
> > <wsrm:SequenceAcknowledgement
> > xmlns:wsrm="http://schemas.xmlsoap.org/ws/2005/02/rm"
> > soapenv:mustUnderstand="true">
> >
> >
> > <wsrm:Identifier>urn:uuid:E20181888A297B3C631182512248038</wsrm:Identifier>
> > <wsrm:AcknowledgementRange Lower="1" Upper="1" />
> > </wsrm:SequenceAcknowledgement>
> > </soapenv:Header>
> > <soapenv:Body>
> > ...
> > </soapenv:Body>
> > </soapenv:Envelope>
> >
> > Someone have an explaination about this pleased ?
> >
> > Regards
> > Jérôme
> >
> >
> > Extract of Axis2.xml:
> > ...
> > <!-- ================================================= -->
> > <!-- Phases -->
> > <!-- ================================================= -->
> > <phaseOrder type="InFlow">
> > <!-- System pre defined phases -->
> > <phase name="Transport">
> > <handler name="RequestURIBasedDispatcher"
> >
> > class="org.apache.axis2.engine.RequestURIBasedDispatcher ">
> > <order phase="Transport"/>
> > </handler>
> > <handler name="SOAPActionBasedDispatcher"
> >
> > class="org.apache.axis2.engine.SOAPActionBasedDispatcher ">
> > <order phase="Transport"/>
> > </handler>
> > </phase>
> > <phase name="Security"/>
> > <phase name="PreDispatch"/>
> > <phase name="Dispatch"
> > class="org.apache.axis2.engine.DispatchPhase">
> > <handler name="AddressingBasedDispatcher"
> >
> > class="org.apache.axis2.engine.AddressingBasedDispatcher ">
> > <order phase="Dispatch"/>
> > </handler>
> >
> > <handler name="SOAPMessageBodyBasedDispatcher"
> >
> > class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher ">
> > <order phase="Dispatch"/>
> > </handler>
> > <handler name="InstanceDispatcher"
> > class="org.apache.axis2.engine.InstanceDispatcher">
> > <order phase="Dispatch"/>
> > </handler>
> > </phase>
> > <!-- System pre defined phases -->
> > <!-- After Postdispatch phase module author or or service
> > author can add any phase he want -->
> > <phase name="OperationInPhase"/>
> >
> > <phase name="RMPhase"/>
> >
> > <phase name="soapmonitorPhase"/>
> > </phaseOrder>
> > <phaseOrder type="OutFlow">
> > <!-- user can add his own phases to this area -->
> > <phase name="RMPhase"/>
> > <phase name="OperationOutPhase"/>
> > <!--system predefined phase-->
> > <!--these phase will run irrespective of the service-->
> >
> > <phase name="PolicyDetermination"/>
> > <phase name="MessageOut"/>
> > <phase name="Security"/>
> > <phase name="soapmonitorPhase"/>
> > </phaseOrder>
> > <phaseOrder type="InFaultFlow">
> > <phase name="PreDispatch"/>
> > <phase name="Dispatch"
> > class="org.apache.axis2.engine.DispatchPhase">
> > <handler name="RequestURIBasedDispatcher"
> >
> > class="org.apache.axis2.engine.RequestURIBasedDispatcher ">
> > <order phase="Dispatch"/>
> > </handler>
> >
> > <handler name="SOAPActionBasedDispatcher"
> >
> > class="org.apache.axis2.engine.SOAPActionBasedDispatcher ">
> > <order phase="Dispatch"/>
> > </handler>
> >
> > <handler name="AddressingBasedDispatcher"
> >
> > class="org.apache.axis2.engine.AddressingBasedDispatcher ">
> > <order phase="Dispatch"/>
> > </handler>
> >
> > <handler name="SOAPMessageBodyBasedDispatcher"
> >
> > class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher ">
> > <order phase="Dispatch"/>
> > </handler>
> > <handler name="InstanceDispatcher"
> > class="org.apache.axis2.engine.InstanceDispatcher">
> > <order phase="PostDispatch"/>
> > </handler>
> > </phase>
> > <!-- user can add his own phases to this area -->
> > <phase name="OperationInFaultPhase"/>
> > <phase name="soapmonitorPhase"/>
> > <phase name="RMPhase"/>
> > </phaseOrder>
> > <phaseOrder type="OutFaultFlow">
> > <phase name="soapmonitorPhase"/>
> > <phase name="RMPhase"/>
> > <!-- user can add his own phases to this area -->
> > <phase name="OperationOutFaultPhase"/>
> > <phase name="PolicyDetermination"/>
> > <phase name="MessageOut"/>
> > </phaseOrder>
> > </axisconfig>
> >
> >
> > Jérôme
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
> > For additional commands, e-mail: sandesha-dev-help@ws.apache.org
> >
> >
>
>
> --
> Chamikara Jayalath
> WSO2 Inc.
> http://wso2.com/
> http://wso2.org/ - For your Oxygen needs
--
Chamikara Jayalath
WSO2 Inc.
http://wso2.com/
http://wso2.org/ - For your Oxygen needs
Re: SOAPMonitor Axis2 phases and Sandesha acknowledgement
Posted by Chamikara Jayalath <ch...@gmail.com>.
Hi Jerome,
Yes. This is becoz we add the Sequence header in the SenderWorker. You will
not see the Sequence header in the handler level.
Chamikara
On 6/22/07, Jerome Camilleri <je...@bull.net> wrote:
>
> Hi,
>
> I try to configure SOAPMonitor.mar on my project to debug my application
> using Axis2 1.2 and Sandesha2 1.2.
> All my request is catch by SOAPMonitor but on the server response wsrm
> tag are missing...
> I try to change into Axis2.xml file the OutFlow phase to call
> soapmonitorPhase after RMPhase like you can see on the fill below but I
> never saw the SequenceAcknowledgement into the server response (I'm sure
> that the response containe it because I had configure tcpmon beetween
> Source and Destination).
>
> <?xml version='1.0' encoding='utf-8'?>
> <soapenv:Envelope xmlns:wsa="http://www.w3.org/2005/08/addressing"
> xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
> <soapenv:Header>
>
> <wsa:MessageID>urn:uuid:E20181888A297B3C631182512256075</wsa:MessageID>
> <wsa:Action></wsa:Action>
>
> <wsa:RelatesTo>urn:uuid:22075684A97A8D05F41182512253019</wsa:RelatesTo>
> </soapenv:Header>
> <soapenv:Body>
> ...
> </soapenv:Body>
> </soapenv:Envelope>
>
> When I used tcpmon the reponse is correct and contain wsrm tags :
> <?xml version='1.0' encoding='UTF-8'?>
> <soapenv:Envelope xmlns:wsa="http://www.w3.org/2005/08/addressing"
> xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
> <soapenv:Header>
>
> <wsa:MessageID>urn:uuid:E20181888A297B3C631182512249456</wsa:MessageID>
> <wsa:Action></wsa:Action>
>
> <wsa:RelatesTo>urn:uuid:22075684A97A8D05F41182512245205</wsa:RelatesTo>
> <wsrm:Sequence
> xmlns:wsrm="http://schemas.xmlsoap.org/ws/2005/02/rm"
> soapenv:mustUnderstand="true">
> <wsrm:Identifier>uid1182512244847</wsrm:Identifier>
> <wsrm:MessageNumber>1</wsrm:MessageNumber>
> </wsrm:Sequence>
> <wsrm:SequenceAcknowledgement
> xmlns:wsrm="http://schemas.xmlsoap.org/ws/2005/02/rm"
> soapenv:mustUnderstand="true">
>
>
> <wsrm:Identifier>urn:uuid:E20181888A297B3C631182512248038</wsrm:Identifier>
> <wsrm:AcknowledgementRange Lower="1" Upper="1" />
> </wsrm:SequenceAcknowledgement>
> </soapenv:Header>
> <soapenv:Body>
> ...
> </soapenv:Body>
> </soapenv:Envelope>
>
> Someone have an explaination about this pleased ?
>
> Regards
> Jérôme
>
>
> Extract of Axis2.xml:
> ...
> <!-- ================================================= -->
> <!-- Phases -->
> <!-- ================================================= -->
> <phaseOrder type="InFlow">
> <!-- System pre defined phases -->
> <phase name="Transport">
> <handler name="RequestURIBasedDispatcher"
>
> class="org.apache.axis2.engine.RequestURIBasedDispatcher">
> <order phase="Transport"/>
> </handler>
> <handler name="SOAPActionBasedDispatcher"
>
> class="org.apache.axis2.engine.SOAPActionBasedDispatcher">
> <order phase="Transport"/>
> </handler>
> </phase>
> <phase name="Security"/>
> <phase name="PreDispatch"/>
> <phase name="Dispatch"
> class="org.apache.axis2.engine.DispatchPhase">
> <handler name="AddressingBasedDispatcher"
>
> class="org.apache.axis2.engine.AddressingBasedDispatcher">
> <order phase="Dispatch"/>
> </handler>
>
> <handler name="SOAPMessageBodyBasedDispatcher"
>
> class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher">
> <order phase="Dispatch"/>
> </handler>
> <handler name="InstanceDispatcher"
> class="org.apache.axis2.engine.InstanceDispatcher">
> <order phase="Dispatch"/>
> </handler>
> </phase>
> <!-- System pre defined phases -->
> <!-- After Postdispatch phase module author or or service
> author can add any phase he want -->
> <phase name="OperationInPhase"/>
>
> <phase name="RMPhase"/>
>
> <phase name="soapmonitorPhase"/>
> </phaseOrder>
> <phaseOrder type="OutFlow">
> <!-- user can add his own phases to this area -->
> <phase name="RMPhase"/>
> <phase name="OperationOutPhase"/>
> <!--system predefined phase-->
> <!--these phase will run irrespective of the service-->
>
> <phase name="PolicyDetermination"/>
> <phase name="MessageOut"/>
> <phase name="Security"/>
> <phase name="soapmonitorPhase"/>
> </phaseOrder>
> <phaseOrder type="InFaultFlow">
> <phase name="PreDispatch"/>
> <phase name="Dispatch"
> class="org.apache.axis2.engine.DispatchPhase">
> <handler name="RequestURIBasedDispatcher"
>
> class="org.apache.axis2.engine.RequestURIBasedDispatcher">
> <order phase="Dispatch"/>
> </handler>
>
> <handler name="SOAPActionBasedDispatcher"
>
> class="org.apache.axis2.engine.SOAPActionBasedDispatcher">
> <order phase="Dispatch"/>
> </handler>
>
> <handler name="AddressingBasedDispatcher"
>
> class="org.apache.axis2.engine.AddressingBasedDispatcher">
> <order phase="Dispatch"/>
> </handler>
>
> <handler name="SOAPMessageBodyBasedDispatcher"
>
> class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher">
> <order phase="Dispatch"/>
> </handler>
> <handler name="InstanceDispatcher"
> class="org.apache.axis2.engine.InstanceDispatcher">
> <order phase="PostDispatch"/>
> </handler>
> </phase>
> <!-- user can add his own phases to this area -->
> <phase name="OperationInFaultPhase"/>
> <phase name="soapmonitorPhase"/>
> <phase name="RMPhase"/>
> </phaseOrder>
> <phaseOrder type="OutFaultFlow">
> <phase name="soapmonitorPhase"/>
> <phase name="RMPhase"/>
> <!-- user can add his own phases to this area -->
> <phase name="OperationOutFaultPhase"/>
> <phase name="PolicyDetermination"/>
> <phase name="MessageOut"/>
> </phaseOrder>
> </axisconfig>
>
>
> Jérôme
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: sandesha-dev-help@ws.apache.org
>
>
--
Chamikara Jayalath
WSO2 Inc.
http://wso2.com/
http://wso2.org/ - For your Oxygen needs