Hide an operation in wsdl

Hi All,

Good morning

Is there anyway we can hide the operations in a wsdl .

The business requirement is I don’t want the target systems to see the operations in the wsdl which I am working on. By this way, they don’t invoke the service when I am editing it .

Thanks,
Sathya

1 Like

IIUC, if you are the provider (exposing your flow services) you can simply disable the service that corresponds to the operation you want to hide.

Let me know if that is not your expecting.

Hi Mahesh,

Actually I am following top down approach.

Moreover, displaying the services will still show the operation in wsdl file only that they will not get results.

My requirement is the end user shouldn’t see the operation in the wsdl so that he will not invoke the one’s I edit and raise bugs.

Thanks,
Sathya

1 Like

Ah! :slight_smile: (raise bugs) I have no other options/suggestions.

If you find a solution kindly update the thread else lets wait for other forum members to comment. Good luck

Manually modify the WSDL before sending to consumer? :smiley:

1 Like

HI Sathyaraj,

For your requirements, it will be better if the exposed services are exposed under a wrapper.
Doing this will help you update the wrapper service as “Under maintenance” and work on the business service.

As per ICC standards we can create webservice provider by writing a custom file and loading it into IS as a file.

By doing so, we can just expose what all service we want to. Attaching webMethods Step for Reference.

Note: For writing custom file we can use various tools like XMLSPY and etc.

Regards,
Syed Faraz Ahmed

Hi Syed,

I am using wsdl first provider only and my requirement is to hide the operations in the wsdl for the external system but it should still be in wsdl so that I can work on it.

thanks,
sathya

Are you using mediator , centrasite ?
Then how about creating a virtual service for the required operation only. Then share the virtual service WSDL to the end party.

Do centrasite have the option to publish only selected operations . If so please let me know the steps. I didn’t see that option when I tried the same.

Thanks,
Sathya

1 Like

I mean to say while creating the virtual service , manually modify the wsd :slight_smile: l and upload it to the Virtual Service definition.

  • Navigate to Asset Catalog → Browse.
  • Click on Add Asset.
  • Select mandatory Fields Type of Asset and Organization of Asset.
  • Provide mandatory field Name. Optionally you can provide description for asset.

For Virtual Service-
Asset Detail Window will open.
Save the Asset.
Click on Actions → Attach the modified WSDL and provide URL details.

Got it . I will try this as a work around . But, by default no setting right ?

Thanks,
Sathya

Hi Sathya,

You need to create a WSDL file in XMLSPY tool (You can use other tools available) manually and provide the operations and binders information manually for whatever operation you want and consume the WSDL as Provider in designer.

By this way you will expose only the selected API’s.

Also as @Rakesh mentioned you can either virtualize the service and edit the WSDL or edit the WSDL file directly and keep only selected operations.

Regards,
Syed Faraz Ahmed