Petals Studio

End-point update in a WSDL is sometimes wrong

Details

  • Type: Bug Bug
  • Status: Closed Closed
  • Priority: Critical Critical
  • Resolution: Fixed
  • Affects Version/s: 1.3.3
  • Fix Version/s: 1.4.0
  • Component/s: Petals Tools
  • Security Level: Public
  • Description:
    Hide
    • Get a WSDL with two ports: a binding for SOAP and one for SOAP 1.2.
    • Change the end-point name in the JBI page.
    • Complete the wizard.

    There are high chances that the wrong binding will be updated by the studio.
    The binding type should be stored in the JBI page, so that the update is more precise.

    See WsdlUtils#updateEndpointAndServiceNamesInWsdl.

    Here is a sample WSDL with two bindings.

    <wsdl:service name="n_deploy" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
    <wsdl:port name="ws_deploy_12" binding="i0:ws_deploy_11">
    <soap:address location="http://xxx/ws_deploy_wcfservice/n_deploy.svc"/>
    </wsdl:port>
    <wsdl:port name="ws_deploy_12" binding="i0:ws_deploy_12">
    <soap12:address location="http://xxx/ws_deploy_wcfservice/n_deploy.svc/soap12"/>
    </wsdl:port>
    </wsdl:service>

    Show
    • Get a WSDL with two ports: a binding for SOAP and one for SOAP 1.2.
    • Change the end-point name in the JBI page.
    • Complete the wizard.
    There are high chances that the wrong binding will be updated by the studio. The binding type should be stored in the JBI page, so that the update is more precise. See WsdlUtils#updateEndpointAndServiceNamesInWsdl. Here is a sample WSDL with two bindings.
    <wsdl:service name="n_deploy" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"> <wsdl:port name="ws_deploy_12" binding="i0:ws_deploy_11"> <soap:address location="http://xxx/ws_deploy_wcfservice/n_deploy.svc"/> </wsdl:port> <wsdl:port name="ws_deploy_12" binding="i0:ws_deploy_12"> <soap12:address location="http://xxx/ws_deploy_wcfservice/n_deploy.svc/soap12"/> </wsdl:port> </wsdl:service>
  • Environment:
    -

Activity

Hide
Vincent Zurczak added a comment - Tue, 29 Oct 2013 - 14:25:06 +0100

Notice the given sample is invalid.
Within a same service, port names must be unique.

However, it is true the current implementation updates the first SOAP binding it founds.
And this can lead to ambiguous situations when a service has 2 SOAP bindings.

Show
Vincent Zurczak added a comment - Tue, 29 Oct 2013 - 14:25:06 +0100 Notice the given sample is invalid. Within a same service, port names must be unique. However, it is true the current implementation updates the first SOAP binding it founds. And this can lead to ambiguous situations when a service has 2 SOAP bindings.

People

Dates

  • Created:
    Mon, 15 Apr 2013 - 13:39:17 +0200
    Updated:
    Tue, 29 Oct 2013 - 15:36:57 +0100
    Resolved:
    Tue, 29 Oct 2013 - 15:36:52 +0100