SAP IDM – How to call web service from IDM
SAP IDM – How to call web service from IDM
Despite my answers on questions like “How to call web service from IDM”, there was a demand for detailed explanation, so here it is.
There is a simple way to call web service from IDM. All we need is JavaScript function and Java based web service. I’ve prepared myself a simple example just as an example.
So let’s get started.
This is my Java based web service:
Deploy you web servise. What is important is that the JAR file should be copied to server where the IDM console is and added in console class path extension, like this:
Then of course the dispatchers scripts should be regenerated and reinstalled. Of course if all web services will use only one dispatcher then you should regenerate and reinstall only it.
Now the IDM part follows.
I’ve used job in job folder with To Generic pass:
In scripts add the following script:
Set the destination tab as follows:
And you are ready to go. Just run the job and here it is the result:
Of course you can use JavaScript code from other passes including provisioning ones, but it should be reworked a little bit in parameters part and should look like this:
If you wonder why I’m using new String(Par) instead of Par directly. It is better this way, because from my personal experience sometimes Par is not recognized as string and then when you try to parse it this way instead of array{String1,String2} you will receive array{ S,t,r,i,n,g,1,S,t,r,i,n,g,2}.
So in order to avoid this behavior always create a new string of Par and then parse it.
I conclusion, if you feel that something is not clear enough or you have unanswered questions, or recommendations please feel free to post
them here or contact me.
Best Regards,
Ivan
A very useful blog. Good work Ivan.
Hi Ivan,
regarding your statement
The reason why this is so is explained in my blog post About length and length().
Thx
kai
Ivan,
I have a .net webservice for Active Directory that I'm trying to call from javascript. The webservice is SSL encrypted. Do you know of any examples of calling a https webservice from IdM? I keep getting an SSL handshake exception.
Hi Daniel,
What is the exact exception? Post it here.
Best regards,
Ivan