[WSDL] Switching environments with Call Web Service

A Score Level 2

Hello,

I work on a project with many Web Services to call. Some of them must be called inside process models using the Call Web Service Smart Service.

I encounter a few issues with that functionnality and would like to have toyr feedback on the best practices or solutions to solve them :

  1. Each of the environment I am working on has its own WSDL for the same called service (one for DEV, one for TEST, one for PROD). I can't define the WSDL address dynamically, which means I have to open and modifiy manually every process model to modify every Smart Service when I switch environment. By doing so, the Smart Service deletes all the values of inputs and outputs and I also have to fill them again (In a PROD environment, this could cause issues due to the time frame during which manual updates are done)
  2. In the DEV environment, in my Call Web Service Smart Service, I use the "GET SERVICES" button to initalize all the CDTs from the Web Service. I eventually use the "REFRESH SERVICES" to update it if needed. When I try to patch my application to the TEST environment, I have a lot of incident related to the fact that those CDTs don't exist yet. In order to make them work, I have to first create a beacon process model to "GET SERVICES" with every Call Web Services Smart Service, and then only can I import my patch.

Those two issues are causing a lot of manual treatments and bring a lot of complexity to the environment synchronisation and patches. Am I doing something wrong ?

Thank you for your return !


  Discussion posts and replies are publicly visible

Parents
  • If I rightly understand your problem, you are looking to dynamically modify the WSDL URL. You can check the box 'Use a dynamic WSDL URL', and use environment constant for that. While the WSDL URL provided in the smart service is used to identify operations and create CDTs, dynamic URL from constant is used to call at run time. 

    It would be a one time process to add constants and then you'd be ready to deploy it in multiple environments. 

    Hope it helps!

Reply
  • If I rightly understand your problem, you are looking to dynamically modify the WSDL URL. You can check the box 'Use a dynamic WSDL URL', and use environment constant for that. While the WSDL URL provided in the smart service is used to identify operations and create CDTs, dynamic URL from constant is used to call at run time. 

    It would be a one time process to add constants and then you'd be ready to deploy it in multiple environments. 

    Hope it helps!

Children