Search code examples
ibm-integration-bus

How to get the WSDL url of application deployed with SOAP Input node in IIB?


I am deploying an application in IIB with SOAPInput and reply. Created the message flow by dragging the wsdl into canvas.I have binding in wsdl as "http://localhost:7801/cap/testService" but when I am trying to hit this URL after deployment, its unable to connect. So my question is how to get the server IP, port after deployment of webservice to form a application path URL to be accessed from SOAP UI

Thanks for your time.

Krishna


Solution

  • On the Soap input node, you can configure the endpoint, for example :

    /myWebservice/helloworld

    Then, on the integration server (formely execution group), you have to define a http(s) port, one is given by default and you can get it from this command :

    mqsireportproperties "yourIIB" -e "yourIntegrationSever" -b httplistener -o HTTP(S)Connector -n port
    /!\ Not tested, I don't have an IIB installed on my current laptop, might need to add/remove a few params, and of course you have to chose between HTTPConnector and HTTPSConntector

    Then the final URL to get your wsdl will be :

    http(s)://"yourServer":"portRetrievedPreviously"/myWebservice/helloworld?wsdl

    Note that the URL defined in your .wsdl file (the one you mentionned in your question) will be overriden to point to the endpoint corresponding to the url used to get the WSDL, example :

    in WSDL : http://localhost:7801/cap/testService

    WSDL retrieved at : http://myserver:8888/cap/testService?wsdl

    The wsdl endpoint retrieve at this url will be changed to "http://myserver:8888/cap/testService" no matter what you have set in the WSDL initialy