Oracle SOA Suite Online Training

Interested in learning Oracle SOA Suite 12c?
Learn from the author of this blog!
A complete and comprehensive course on the #1 platform on SOA - Oracle SOA Suite

Click here to find the complete course details
Click here to check the first session on Oracle SOA Suite 12c

================================================================================================

Creating a SDO based on ADF Business Component


SDO's provide a way to access the underlying data layer in an implementation agnostic manner
Oracle's Application Development Framework(ADF) gives a way to create an SDO based on its Business Component in a very easy manner
This tutorial shows you how to create an SDO out of ADF BC
This tutorial requires a basic understanding of ADF BC
In this, we'll create a SDO for accessing a custom table in hr schema

First create an Generic Project, name it ADFBussCompForSDO

 
Rt click on the project --> new --> ADF Business Components --> Business Components from Tables

 
In the next screen, create a connection to the database, test it
 
Now, the Create Business Components from Tables wizard opens up where you'll create Entity Object, View Object, Application Module

 
No Read-Only VO's in this case, so just press next



 
Press next and finish

This step will create all the three business components of ADF

Now, open the AppModule, go to Service Interface tab --> click on "+"



Click next to go to Service View Instances
Shuttle EmployeesVO1 to the right. When you do this, multiple methods will show up at the bottom, where you need to select the methods that you want to expose
Select all the methods, meaning you want to expose all the operations to the external clients through a WebService


 
Click on finish. This will generate a set of files which would expose operations on the underlying table as WebService operations. You can see the .wsdl file generated under the serviceinterface folder

Next, create a deployment profile for this project. Please note that this is not mandatory, this is just to check the WebService endpoint.
Rt click on the project --> properties --> deployment --> New --> select archive type as Business Components Service Interface

 
Deploy the project
Application(Menu option) --> deploy --> <currentProject_profileName>
 
(Since this is an ADF/Web prj, this needs to be done from the Application level unlike the SOA composites where we do it from the prj rt click)


After the deployment, url for the same can be found in the wsdl file generated earlier. You need to modify the portnumber in the url to point to the one you have deployed this to.

Thats it! You're done with creating an SDO that can be used to work to the underlying db layer

Hope this gave you a clear picture on creating the SDO using ADF-BC
Thanks for going through my post, feel free to provide a feedback!

2 comments:

  1. Hi,
    I have followed the same steps as you mentioned above. But while deploying i am getting an error. Below is the error stack trace. Can you please help me in resolving this.

    SOA Platform is running and accepting requests

    ReplyDelete
    Replies
    1. Hi
      Can you place the trace here.
      Also, have you tried deploying from application level rather than at project level? It has to be done at application level.

      Delete