Petals BC SOAP

When handling SOAP faults, faultCode can have an unbounded prefix.

Details

  • Type: Bug Bug
  • Status: Resolved Resolved
  • Priority: Minor Minor
  • Resolution: Fixed
  • Affects Version/s: 4.0.2
  • Fix Version/s: 4.0.3
  • Component/s: None
  • Security Level: Public
  • Description:
    Hide

    On this sample, BPEL returns a fault properly prefixed with 'soap:'

    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soapenv:Body>
    <soapenv:Fault>
    <faultcode>soap:Server</faultcode>
    <faultstring>A fault occurs during the petals treatment</faultstring>
    <detail>
    <removeClientOperationIllegalArgumentFault xsi:type="fault:IllegalArgumentFault" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:fault="http://document.prosodie.com/Fault/1/">
    <tns:message xsi:type="xs:string" xmlns:tns="http://document.prosodie.com/Fault/1/" xmlns:xs="http://www.w3.org/2001/XMLSchema">RemoveClientOperation Error.</tns:message>
    </removeClientOperationIllegalArgumentFault>
    </detail>
    </soapenv:Fault>
    </soapenv:Body>
    </soapenv:Envelope>

    However, since faultCode is considered as a string (and not a QName), the prefix is not properly replaced by the corresponding SOAP namespace prefix in the newly created SOAP body.

    Show
    On this sample, BPEL returns a fault properly prefixed with 'soap:' <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <soapenv:Fault> <faultcode>soap:Server</faultcode> <faultstring>A fault occurs during the petals treatment</faultstring> <detail> <removeClientOperationIllegalArgumentFault xsi:type="fault:IllegalArgumentFault" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:fault="http://document.prosodie.com/Fault/1/"> <tns:message xsi:type="xs:string" xmlns:tns="http://document.prosodie.com/Fault/1/" xmlns:xs="http://www.w3.org/2001/XMLSchema">RemoveClientOperation Error.</tns:message> </removeClientOperationIllegalArgumentFault> </detail> </soapenv:Fault> </soapenv:Body> </soapenv:Envelope> However, since faultCode is considered as a string (and not a QName), the prefix is not properly replaced by the corresponding SOAP namespace prefix in the newly created SOAP body.
  • Environment:
    Petals ESB 3.1

Activity

Hide
mjambert added a comment - Mon, 12 Jul 2010 - 10:12:43 +0200

as stated in http://www.w3.org/TR/2000/NOTE-SOAP-20000508/
faultCode MUST be a QNAME.

Show
mjambert added a comment - Mon, 12 Jul 2010 - 10:12:43 +0200 as stated in http://www.w3.org/TR/2000/NOTE-SOAP-20000508/ faultCode MUST be a QNAME.

People

  • Assignee:
    mjambert
    Reporter:
    mjambert
  • Watchers:
    0

Dates

  • Created:
    Thu, 1 Jul 2010 - 18:10:01 +0200
    Updated:
    Wed, 15 Sep 2010 - 10:02:21 +0200
    Resolved:
    Mon, 12 Jul 2010 - 10:37:14 +0200