Mule
  1. Mule
  2. MULE-5967

CXF is not applying the response block when is before the tag

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 3.2.1
    • Fix Version/s: 3.3.0
    • Component/s: Modules: CXF
    • Labels:
      None
    • Environment:

      OS X

    • User impact:
      Low
    • Similar Issues:
      MULE-5619script transformer called twice when applied in response
      MULE-4306Patch to apply TransformerTemplate to AxisServiceComponent result
      MULE-3757Move catch-all-strategy blocks in the Xml to the bottom of <inbound> and <outbound> tags
      MULE-1154A webservice call on xfire fails when an XsltTransformer is applied as a response transformer
      MULE-4516Response Transformer are not applied when reponse is null
      MULE-4173Support all CXF routing and transformation use cases
      MULE-5498Request transformers are ignored when applied for and endpoint embedded inside enricher
      MULE-4677No response when attempting to implement sync proxy with cxf over jms
      MULE-4011CXF not sending charset information on responses
      MULE-5638Provide access to entire xml message with <cxf:proxy-service />, not just the body

      Description

      This is the use case to reproduce the issue:

       <flow name="EchoFlow" doc:name="EchoFlow">
              <inbound-endpoint address="http://localhost:65082/services/EchoUMO" exchange-pattern="request-response" doc:name="Generic"/>
              <response>
                  <append-string-transformer message="RESPONSE!" doc:name="Append String"/>
              </response>
              <cxf:jaxws-service serviceClass="org.mule.example.echo.Echo" doc:name="SOAP"/>
              <component class="org.mule.example.echo.Echo" doc:name="Component"/>
      </flow>
      

      The transformer in the response block is not being applied before sending the message to the inbound-endpint.

        Activity

        Hide
        Matías Pentreath added a comment -

        Attaching studio project to reproduce this issue. It contains the echo example.

        Show
        Matías Pentreath added a comment - Attaching studio project to reproduce this issue. It contains the echo example.
        Hide
        Evangelina Martinez Ruiz Moreno added a comment -

        This issue is fixed in Mule 3.3 with the improvements done on the transformers.

        The problem with having a response block before returning the soap message through the HTTP inbound endpoint is that the type of the payload is OutputHandler. Which the append string was not recognizing as a valid type to transform.

        It wouldn't make much sense to have a response block at that point anyway. But if needed in previous versions of Mule, an ObjectToString can be explicitly defined.

        Show
        Evangelina Martinez Ruiz Moreno added a comment - This issue is fixed in Mule 3.3 with the improvements done on the transformers. The problem with having a response block before returning the soap message through the HTTP inbound endpoint is that the type of the payload is OutputHandler. Which the append string was not recognizing as a valid type to transform. It wouldn't make much sense to have a response block at that point anyway. But if needed in previous versions of Mule, an ObjectToString can be explicitly defined.

          People

          • Assignee:
            Evangelina Martinez Ruiz Moreno
            Reporter:
            Matías Pentreath
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development