Uploaded image for project: 'ODE'
  1. ODE
  2. ODE-885

whitespaces in dynamic EPR cause AxisFault: Transport out has not been set

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 1.3.3, 1.3.4, 2.0-beta1, 2.0-beta2
    • 1.3.5
    • BPEL Runtime
    • None
    • Windows XP, Java 1.6

    Description

      When assigning dynamically the EPR of a partner link and the EPR has whitespaces as in the example below:

      <bpel:copy>
      <bpel:from>
      <bpel:literal>
      http://localhost:8181/cxf/ChemicalComputationsService1
      </bpel:literal>
      </bpel:from>
      <bpel:to partnerLink="AbstractServicePartnerLink" />
      </bpel:copy>

      the result is:

      21:58:22,968 DEBUG [ExternalService] Endpoint URL overridden by process. http://www.example.org/ =>
      http://localhost:8181/cxf/ChemicalComputationsService1

      21:58:22,968 DEBUG [ExternalService] Axis2 sending message to
      http://localhost:8181/cxf/ChemicalComputationsService1
      using MEX {PartnerRoleMex#hqejbhcnphr5j3rkt95j6n [PID

      {http://dynamiceprchemicalprocess.wsbpel.examples.xh.org}

      Dyna
      micEPRChemicalProcess-335] calling org.apache.ode.bpel.epr.URLEndpoint@3f3b9b.AbstractOperation(...)}
      21:58:22,984 DEBUG [ExternalService] Message: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelop
      e/"><soapenv:Body>
      <csn:computeParameters xmlns:csn="http://chemical_service.servicemix.ode.studies.xh.org/">
      <arg0>sulphuric acid</arg0>
      <arg1>24.0</arg1>
      </csn:computeParameters>
      </soapenv:Body></soapenv:Envelope>
      21:58:23,000 DEBUG [PartnerRoleMessageExchangeImpl] replyAsync mex=hqejbhcnphr5j3rkt95j6n
      21:58:23,031 DEBUG [BpelRuntimeContextImpl] Setting execution state on instance 63351
      21:58:23,875 DEBUG [SessionOutHandler] Sending stateful TO epr in message header using session null
      21:58:23,875 DEBUG [SessionOutHandler] Sending a message containing wsa endpoints in headers for session passing.
      21:58:23,890 DEBUG [SessionOutHandler] <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><so
      apenv:Header><addr:To xmlns:addr="http://www.w3.org/2005/08/addressing">
      http://localhost:8181/cxf/ChemicalComputationsService1
      </addr:To><addr:Action xmlns:addr="http://www.w3.org/2005/08/addressing"></addr:Action><addr:ReplyTo xmlns:addr="htt
      p://www.w3.org/2005/08/addressing"><addr:Address>http://www.w3.org/2005/08/addressing/anonymous</addr:Address></addr:ReplyTo><addr:MessageID xmlns:addr="htt
      p://www.w3.org/2005/08/addressing">uuid:hqejbhcnphr5j3rkt95j6q</addr:MessageID></soapenv:Header><soapenv:Body>
      <csn:computeParameters xmlns:csn="http://chemical_service.servicemix.ode.studies.xh.org/">
      <arg0>sulphuric acid</arg0>
      <arg1>24.0</arg1>
      </csn:computeParameters>
      </soapenv:Body></soapenv:Envelope>
      21:58:23,921 ERROR [ExternalService] Error sending message (mex={PartnerRoleMex#hqejbhcnphr5j3rkt95j6n [PID

      {http://dynamiceprchemicalprocess.wsbpel.example s.xh.org}

      DynamicEPRChemicalProcess-335] calling org.apache.ode.bpel.epr.URLEndpoint@3f3b9b.AbstractOperation(...)}): Transport out has not been set
      org.apache.axis2.AxisFault: Transport out has not been set
      at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:383)
      at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:374)
      at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:211)
      at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
      at org.apache.ode.axis2.SoapExternalService$1$1.call(SoapExternalService.java:204)
      at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
      at java.util.concurrent.FutureTask.run(FutureTask.java:138)
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
      at java.lang.Thread.run(Thread.java:619)
      21:58:23,984 DEBUG [PartnerRoleMessageExchangeImpl] replyWithFailure mex=hqejbhcnphr5j3rkt95j6n failureType=COMMUNICATION_ERROR description=Error sending me
      ssage (mex={PartnerRoleMex#hqejbhcnphr5j3rkt95j6n [PID

      {http://dynamiceprchemicalprocess.wsbpel.examples.xh.org}

      DynamicEPRChemicalProcess-335] calling org.a
      pache.ode.bpel.epr.URLEndpoint@3f3b9b.AbstractOperation(...)}): Transport out has not been set details=null
      21:58:23,984 DEBUG [PartnerRoleMessageExchangeImpl] create work event for mex=hqejbhcnphr5j3rkt95j6n

      When changed to:

      <bpel:copy>
      <bpel:from>
      <bpel:literal>http://localhost:8181/cxf/ChemicalComputationsService1</bpel:literal>
      </bpel:from>
      <bpel:to partnerLink="AbstractServicePartnerLink" />
      </bpel:copy>

      The process works fine.

      The EPR should be trimmed to be 100% sure that it's does not contain whitespaces. This should be a simple and quick fix.

      thanks,
      Łukasz

      Attachments

        1. ode885.patch
          1 kB
          Oleg Zenzin

        Activity

          People

            Unassigned Unassigned
            lukasz Łukasz Antoniak
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - 1h
                1h
                Remaining:
                Remaining Estimate - 1h
                1h
                Logged:
                Time Spent - Not Specified
                Not Specified