Exposing Standard API as REST Web Service and invoke

Perform following steps to expose Pl/SQL as a web service

 

1.       Search API in Integration Repository

2.       Deploy API as REST Service

3.       Create Grants for REST Service

4.       Invoke EBS REST Service (in JSON message format)

5.       Verify the results

 

Here we will take an example of creating a user by exposing FND_USER_PKG Interface API and then invoking it to create user.

 

Following steps will explain the process of exposing the standard API and then invoking it.

 

Step 1: Navigate to Integration Repository Responsibility, Click on Search.





 

Then on search Page enter “FND_USER_PKG” in Internal Name and click on Go




 

Step 2: Click on the search result, it will display List of methods available in the Interface Package.






Click on REST Web Service Tab



 


This page will display List of methods that can be deployed.

 

Step 3: Now select Create/Update User (we will create a user by invoking this Service once Deployed.) and enter Service Alias (This is mandatory) and then Click on Deploy button at bottom.

You will receive message that service is successfully deployed and the status will be deployed.




 

Step 4: Now you will see the link to WADL file, Click on the link. It shows the physical location of the service endpoint where the service is hosted.

 

<?xml version="1.0" encoding="UTF-8"?>

<application xmlns:tns1="http://xmlns.oracle.com/apps/fnd/rest/create_user/load_row/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://wadl.dev.java.net/2009/02" xmlns:tns="http://xmlns.oracle.com/apps/fnd/soaprovider/plsql/rest/fnd_user_p kg/" targetNamespace="http://xmlns.oracle.com/apps/fnd/soaprovider/plsql/rest/fnd_ user_pkg/"                              name="FND_USER_PKG"><grammars><include xmlns="http://www.w3.org/2001/XMLSchema"

 

href="http://xxx-xxx- apdv01.cli.ad:8005/webservices/rest/Create_User/?XSD=LOAD_ROW_SYNCH_TYPEDEF.x sd"/>

 

</grammars>

<resources                                               base="http://xxx-xxx-xx01.xx:8000/webservices/rest/Create_User/"><resource path="load_row/">

<method name="POST" id="LOAD_ROW"><request><representation type="tns1:InputParameters" mediaType="application/xml"/>

<representation type="tns1:InputParameters" mediaType="application/json"/>

</request>

</method>

</resource>

</resources>

</application>

 

Now open the link highlighted in Yellow in new Browser window, it will show the XSD file with input parameters that will be used later for invoking the Web Service.

 

Step 5.Now Click on the Grants Tab, select Create/Update User and then click on Create Grant button




 

Step 6: Select a grantee type.

Grantee Type can be one of the following values:

o    USER - The grantee is an individual user who was selected directly.

o    GROUP - The grantee is a group of users or a member of a group of users.

o    GLOBAL - The grant was issued to all users.

If you selected Specific User or Group of Users, specify the user or group for which to create the grants in the Grantee Name field.

 

In our Case Study we will enter SYSADMIN and then click on Create Grant Button.




 

It will display confirmation message:




To Revoke Grants click on Revoke Grants button under Grants Tab ,it will display List of users with access for revoking the Grants.

To Undeploy the Web services select the method and click on undeploy under the REST Web Services Tab

 

Step 7: Now we will invoke this web service using Advanced REST Client apps available in Google Chrome.

If not available download it from following link:


https://chrome.google.com/webstore/detail/advanced-rest-client/hgmloofddffdnphfgcellkdfbfbjeloo

 

Now, after installing the REST client we will enter following details to invoke the web service:



Step 8: Enter the following header details:

Authorization by clicking on Add new header link then enters the application username/password by clicking on construct.




Then enter Accept, Content language




 


Select application/json in the Content Type below.

 

Step 9: Enter the following Link and payload information and click on send. The payload is constructed using the xsd file generated at Step 4.

 

Link : http://xxx-xxx-xx01.xx:8000/webservices/rest/Create_User/load_row/


Payload:

 

{

"Create_User": {

"@xmlns": "http://xmlns.oracle.com/apps/fnd/rest/create_user/load_row", "RESTHeader": {

"xmlns": "http://xmlns.oracle.com/apps/fnd/rest/Create_User/header", "Responsibility":"US_HRMS_MANAGER",

"RespApplication":"PER", "SecurityGroup":"STANDARD", "NLSLanguage":"AMERICAN", "Org_Id" :"201"

},

"InputParameters": { "X_USER_NAME": "XX_USER",

"X_ENCRYPTED_USER_PASSWORD": "XX_PWD", "X_START_DATE": "19/07/2023",

"X_EMAIL_ADDRESS": "xx_user@test.com"

}

}

}

 




Step 10: Now to verify if user is created query in FND_USER table to check the results.