Petals BC SOAP

Not valid Document wrapped attitude

Details

  • Type: Bug Bug
  • Status: Closed Closed
  • Priority: Critical Critical
  • Resolution: Duplicate
  • Affects Version/s: 4.0.4
  • Fix Version/s: 4.1
  • Component/s: None
  • Security Level: Public
  • Description:
    Hide

    When the service is on document mode, the component receiving a soap envelop must:
    1-search the soap action into the payload
    2a-if it's found, it must search the operation with the soap action matching the soap action of the payload
    2b-if it's not found, or the wsdl haven't this soap action, the root element must be used to search the operation with the content ("message" on wsdl 1.x) matching (name attribute).

    Today, the soapAction is always used:
    // Retrieve message operation and service
    final String soapAction = inContext.getWSAAction(); -->This get retrieve the string ""
    [...]
    if (soapAction != null ) { -->always true! bindingOperation = WsdlHelper.findOperationUsingSoapAction(soapAction, desc); }

    We often see binding operation with an empty soap action (I don't know why, it's not a mandatory attribute. It's maybe because the WS-I samples have got its soapAction=""). So, in this case (that is my case of course), the bc-soap always choose...the first operation.
    I think it's itsself a minor bug: we can remove the soapAction="" into the wsdl. But sometimes, we're not allowed to change the wsdl: so it's a major bug for me .

    Show
    When the service is on document mode, the component receiving a soap envelop must: 1-search the soap action into the payload 2a-if it's found, it must search the operation with the soap action matching the soap action of the payload 2b-if it's not found, or the wsdl haven't this soap action, the root element must be used to search the operation with the content ("message" on wsdl 1.x) matching (name attribute). Today, the soapAction is always used: // Retrieve message operation and service final String soapAction = inContext.getWSAAction(); -->This get retrieve the string "" [...] if (soapAction != null ) { -->always true! bindingOperation = WsdlHelper.findOperationUsingSoapAction(soapAction, desc); } We often see binding operation with an empty soap action (I don't know why, it's not a mandatory attribute. It's maybe because the WS-I samples have got its soapAction=""). So, in this case (that is my case of course), the bc-soap always choose...the first operation. I think it's itsself a minor bug: we can remove the soapAction="" into the wsdl. But sometimes, we're not allowed to change the wsdl: so it's a major bug for me .
  • Environment:
    RHEL5, esb 3.1.1
  1. getCustomer.zip
    (3 kB)
    Frédéric Gardes
    Fri, 19 Nov 2010 - 14:19:36 +0100

Issue Links

Activity

People

Dates

  • Created:
    Fri, 19 Nov 2010 - 14:14:50 +0100
    Updated:
    Thu, 16 Feb 2012 - 17:06:32 +0100
    Resolved:
    Fri, 19 Nov 2010 - 15:11:58 +0100