Talend ESB
  1. Talend ESB
  2. TESB-3958

SAM: Transport type JMS is not filled correctly in message events for JMS based requests.

    Details

    • Demo Scope:
      Hide

      Show bug is fixed with CXF 2.5.1, if not show issue is reopened with comment why we reopened it.

      Presenter: Alexey
      Expected duration (min.): ?

      Show
      Show bug is fixed with CXF 2.5.1, if not show issue is reopened with comment why we reopened it. Presenter: Alexey Expected duration (min.): ?
    • Story Points:
      1

      Description

      When running a test where a consumer communicates with a provider via JMS, I see a wrong transport type: http://schemas.xmlsoap.org/soap/http .
      As we are not using http, so we would expect a value that indicates that JMS was used. Stating that it is http is a bit misleading ...

      2 2011-11-16 08:16:58.847 REQ_OUT 788 sopmac11 192.168.200.5

      {http://services.test.esb.talend.org/Standard}

      StandardTestService

      {http://services.test.esb.talend.org/Standard}

      doOneway urn:uuid:c799d4b9-2b92-4e14-93cb-e53756823d23 urn:uuid:41d3bab5-fccd-4540-b6ec-a3e5c902c396 http://schemas.xmlsoap.org/soap/http false <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Header><flowId xmlns="http://www.talend.com/esb/sam/flowId/v1">urn:uuid:41d3bab5-fccd-4540-b6ec-a3e5c902c396</flowId><Action xmlns="http://www.w3.org/2005/08/addressing">http://http://services.test.esb.talend.org/Standard/StandardTestServiceProvider/doOneway</Action><MessageID xmlns="http://www.w3.org/2005/08/addressing">urn:uuid:c799d4b9-2b92-4e14-93cb-e53756823d23</MessageID><To xmlns="http://www.w3.org/2005/08/addressing">http://localhost:8085/services/tesb.test.participants.sam.provider/soap/StandardTestServiceProvider/</To><ReplyTo xmlns="http://www.w3.org/2005/08/addressing"><Address>http://www.w3.org/2005/08/addressing/none</Address></ReplyTo></soap:Header><soap:Body><ns2:OnewayRequest xmlns:ns2="http://services.test.esb.talend.org/Standard/types"><key>Oneway</key><value/></ns2:OnewayRequest></soap:Body></soap:Envelope>

        Activity

        Hide
        d wolz added a comment -

        Had a look into the code, the section responsible for reporting the transport type is
        in MessageToEventMapper:

        if (message.getExchange().getBinding() instanceof SoapBinding) {
        SoapBinding soapBinding = (SoapBinding)message.getExchange().getBinding();
        if (soapBinding.getBindingInfo() instanceof SoapBindingInfo)

        { SoapBindingInfo soapBindingInfo = (SoapBindingInfo)soapBinding.getBindingInfo(); messageInfo.setTransportType(soapBindingInfo.getTransportURI()); }

        }
        if (messageInfo.getTransportType() == null)

        { messageInfo.setTransportType("Unknown transport type"); }

        What is the expected behaviour of this code for JMS? Seems that the transport type is retrieved using
        soapBindingInfo.getTransportURI(), the corresponding code hasn't changed since RC2. May be
        soapBindingInfo.getTransportURI() behaves differently for JMS in CXF 2.5.0 ?

        Show
        d wolz added a comment - Had a look into the code, the section responsible for reporting the transport type is in MessageToEventMapper: if (message.getExchange().getBinding() instanceof SoapBinding) { SoapBinding soapBinding = (SoapBinding)message.getExchange().getBinding(); if (soapBinding.getBindingInfo() instanceof SoapBindingInfo) { SoapBindingInfo soapBindingInfo = (SoapBindingInfo)soapBinding.getBindingInfo(); messageInfo.setTransportType(soapBindingInfo.getTransportURI()); } } if (messageInfo.getTransportType() == null) { messageInfo.setTransportType("Unknown transport type"); } What is the expected behaviour of this code for JMS? Seems that the transport type is retrieved using soapBindingInfo.getTransportURI(), the corresponding code hasn't changed since RC2. May be soapBindingInfo.getTransportURI() behaves differently for JMS in CXF 2.5.0 ?
        Hide
        Dai Xilai added a comment -

        I reproduced this issue just using CXF 2.5.0 samples/jms_spring_config by adding SAM feature to this sample, the transport type which SAM agent got is : http://schemas.xmlsoap.org/soap/http

        Looking into the source code of MessageToEventMapper, Using SoapBindingInfo is no problem. but getTransportURI() should return like "soap/jms", not "soap/http". so I think possiblly it's a issue from CXF transport side. I'll send a mail to the CXF mailinglist about this issue.

        Show
        Dai Xilai added a comment - I reproduced this issue just using CXF 2.5.0 samples/jms_spring_config by adding SAM feature to this sample, the transport type which SAM agent got is : http://schemas.xmlsoap.org/soap/http Looking into the source code of MessageToEventMapper, Using SoapBindingInfo is no problem. but getTransportURI() should return like "soap/jms", not "soap/http". so I think possiblly it's a issue from CXF transport side. I'll send a mail to the CXF mailinglist about this issue.
        Hide
        cschneider added a comment -

        The problem is in CXF. I am working on a patch now. See:
        https://issues.apache.org/jira/browse/CXF-3920

        Show
        cschneider added a comment - The problem is in CXF. I am working on a patch now. See: https://issues.apache.org/jira/browse/CXF-3920
        Hide
        Zsolt Beothy-Elo added a comment -

        https://issues.apache.org/jira/browse/CXF-3920 seems to be fixed, so we should retest the issue using our release version together with CXF 2.5.1.

        Show
        Zsolt Beothy-Elo added a comment - https://issues.apache.org/jira/browse/CXF-3920 seems to be fixed, so we should retest the issue using our release version together with CXF 2.5.1.
        Hide
        Zsolt Beothy-Elo added a comment -

        We first have to include cxf 2.5.1 before we can close the issue.

        Show
        Zsolt Beothy-Elo added a comment - We first have to include cxf 2.5.1 before we can close the issue.

          People

          • Assignee:
            Jürgen Kindler
            Reporter:
            Jürgen Kindler
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: