Sandesha2
  1. Sandesha2
  2. SANDESHA2-116

LastMessage over mailtransport does not setup SynchronousMailListener

    Details

    • Type: Bug Bug
    • Status: Open
    • Priority: Critical Critical
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None
    • Environment:
      Axis2/Sandesha2 pre/rc branch_1_3. WSRM 1.0

      Description

      When running Replay mode (replyto=anonymous / isUseSeparateListener == false) over mailtransport sending LastMessage does not setup SynchronousMailListener - and Acknowledgements are not handled correctly.

      Old desc:

      When running sync(replyto=anonymous) over mailtransport sending TerminateSequence does not setup SynchronousMailListener - and TS response is not handled correctly.

      The same should also apply for Acks/LastMessage...

      In util.SpecSpecificConstants.getWSRMOperation - the AxisOperation which Axis.transport.mail.EMailSender looks at to determine sync/non-sync is set to RM_OUT_ONLY_OPERATION resulting in non-sync.

      I donot know the consequences of changing this to OUT_IN

        Activity

        Hide
        Deepal Jayasinghe added a comment -

        I went though the code and found out that in the case of RM 1.0 it creates OUT_ONLY AxisOperation and I think that correct , however for the 1.1 it creates OUT_IN AxisOperation for the TS.

        Show
        Deepal Jayasinghe added a comment - I went though the code and found out that in the case of RM 1.0 it creates OUT_ONLY AxisOperation and I think that correct , however for the 1.1 it creates OUT_IN AxisOperation for the TS.
        Hide
        Hans G Knudsen added a comment -

        Patch for SaneshaClient.terminateSequence - which sets up OUT_IN MEP for LastMessage when rm is protocol-syncronous (the Microsoft RM 1.0 way).

        With the patch the

        LastMessage is transmitted and Sandesha replays - until a LastMessage(Response) is received with server acknowledge...

        Also the

        SandeshaClient.waitUntilSequenceCompleted (serviceClient);

        waits until ack.

        Tested for positive test on both http and mail transport.

        Tested with a client RM timeout before service responds.

        Show
        Hans G Knudsen added a comment - Patch for SaneshaClient.terminateSequence - which sets up OUT_IN MEP for LastMessage when rm is protocol-syncronous (the Microsoft RM 1.0 way). With the patch the LastMessage is transmitted and Sandesha replays - until a LastMessage(Response) is received with server acknowledge... Also the SandeshaClient.waitUntilSequenceCompleted (serviceClient); waits until ack. Tested for positive test on both http and mail transport. Tested with a client RM timeout before service responds.
        Hide
        Hans G Knudsen added a comment -

        I will re-test this issue - when the problem I have with

        http://issues.apache.org/jira/browse/SANDESHA2-132

        to check if this is still a problem.

        Show
        Hans G Knudsen added a comment - I will re-test this issue - when the problem I have with http://issues.apache.org/jira/browse/SANDESHA2-132 to check if this is still a problem.

          People

          • Assignee:
            Unassigned
            Reporter:
            Hans G Knudsen
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:

              Development