This blog is helpful for those who are new in Oracle ADF 12c as well as for the professionals. This blog contains the basic and advanced concept of Oracle ADF 12c.

Tuesday 28 February 2017

Difference Between Unbounded task flow and Bounded task flow?




S. No.
Unbounded Task Flow
Bounded Task Flow
1.
 It is not secured
  Secured
2.
 Multiple entry/exit point
  Single entry point and multiple exit.
3.
 Call one or more Bounded task flow.
  Call other bounded task flow but not unbounded task flow
4.
 It does not support parameters.
  It support input parameters and return values.
5.
 It does not support transactions.
  It support transactions.
Read More

What is Bounded and Unbounded Task Flow ?

Unbounded Task Flow :-


  • Unbounded task flow is a set of activities, control flow rules, and managed beans that interact to allow a user to complete a task.

  • It is similar to the JSF page flow.

  • When ADF Fusion project is created then, by default adfc-config.xml file is created, this is an unbounded task flow.

  

  •  This task flow contains multiple entry or exit points.
          Example :-  we can access any of these two page directly by specifying the jspx page
name at HTTP request URL.


  • An application contains one and only one Unbounded task flow.

  • It does not have any default activity.

  • Unbounded Task flow can contain one or more bounded task flow, but we unbounded cannot directly call the bounded task flow, it always refers to the jspx/jsf pages so to use bounded task flow first we have to used as a region on jspx page and then call that jspx page on unbounded task flow.


Bounded Task Flow :-

  • Bounded Task Flow is a set of activities, control flow rules, page fragments, managed beans  used to interact with user to complete a task.

  • Bounded Task Flow has default activity i.e contains single entry point but multiple exit point.




  • Bounded Task Flow can be called on another bounded task flow.
           Here we can directly call bounded task flow on another task flow.


  • Bounded Task Flow can also be called on Unbounded task flow.

  • It is a re-usable task flow.
Read More

Sunday 26 February 2017

Basic Description Of ADF Task Flow?

ADF Task Flow:-

1. Adf task flow is a modular approach, that is used to define the control flow in an application.


2. Adf task flow is used to perform a reusability of jsf pages by breaking a single jsf page into a  collection of different reusable task flow.

3.  Navigation is in between the pages, activities, task flows, routers etc.

4.  It uses memory scope i.e pageFlow scope, in order to navigate the data within the task   flows.


5.  There are two type of task flows :-
     
     a. Unbounded Task Flow.
     b.  Bounded Task Flow.
Read More

Details about Configuration files as well as other xml files used in Oracle ADF 12C Application?

1. PageDef.xml :-
  • For each page one page definition file is created.
  • Page definition file consist of following sections :-

          parameters  :-  These are page level parameters that are stored locally to web page, and it is accessed by using an expression language.

          executables :-  This section contains the definition of Binding Container, access the iterators present data control, accessor iterator, method iterator etc.

It is also contains the entry of task flow binding.


          bindings  :-  It contains the entry of method action , attributes etc which refers to an entry in executable section.



2.   DataBindings.cpx :-
  • This is a Data Binding Registry file. Jdeveloper creates this file, when first time an          accessable entry from data control binds to an UI Component.
  • This file contains the following section:-

                Page Mappings :- It contains the path/location of a jsf, jspx or jsff page in a URL Pattern and usage id of corresponding page definition file.
                Page Definition Usages :-  It contains the entry of usage id of page definition file and the path/location of page defination file.
                Data Control Usages :-  It contains the entry of data control defined in DataControl.dcx, whose methods or iterators are used on pages. And also the entry of BC4J Data control i.e Application Module data control. 




3.  DataControl.dcx  :-
  • This file is created when data control is created on Business layer such as web service data control, Placeholder data control etc.
  • Appmodule data control entry is not defined in DataControl.dcx file because it is a part of  ADF Model layer transaction technology, which creates it own data control in order to access   at view layer.
  • One Model project contains one dcx file.

In below screen shot you can see that for Appmodule data control their is no entry in dcx file, but  we have an entry of placeholder data control and adapter data control entry in dcx file.



4.  adfm.xml :-
  • This file contains the path of other registry files which is used on model project.
  • This file is automatically generated by jdeveloper while creating a model project.
  • This file contains the path information of following files :-

             modelprojectname.jpx
             bc4j.xcfg
             DataControl.dcx
             DataBinding.cpx 



5.   AppModule.xml :-
  • This file contains the configuration of view object/view link/app module instances to interact with client interface.


  •  It also contains the configuration of java custom interface, web service interface to work with web services.




6.  adf-settings.xml  :-
  • Jdeveloper create this file automatically while creating an ADF Fusion application in META-INF folder.
  • adf-settings.xml file holds project-level and library-level settings such as ADF Faces help providers and ADF Controller phase listeners.
  • The configuration settings for adf-settings.xml are fixed and cannot be changed during or after application deployment.
  • There can be multiple adf-settings.xml files in an application. 




7.   adf-config.xml  :-

     It Specifies application-level settings that are usually determined at deployment (deployment profile) and often changed at run time by a managed bean that is registered for the component configuration to specify run-time settings.

Default configuration an adf-config.xml file will be:-



8.  adfc-config.xml :-
  •  It is a configuration file for ADF UnBounded Task Flow.
  • It contains the information about the activities used on unbounded task flow and the control flow between the pages used on unbounded task flow.
  • It also contains the reference of exception handler for view activity. and reference to a managed bean or create managed bean.




9.  faces-config.xml :-
  • The faces-config.xml file contains the configurations for a web application built using JSF. This file allows to configure managed beans, data convertors, and validators used in the UI, navigation cases, global resource bundles, view handlers, page lifecycle phase listeners, and custom lifecycle factory implementation for the application.
  • The search order is such that the reference to a managed bean is first resolved to faces-config.xml. If the bean is not found there, then ADFc configuration file is referenced.




10.  trinidad-config.xml :-

This file contains the configuration of asf skin files.



11.  web.xml :-

  The web.xml file acts as a deployment descriptor for a java-based web application.
You must configure the following in web.xml for all applications that use JSF and ADF Faces:
  • JSF servlet and mapping : The javax.faces.webapp.FacesServlet servlet that manages the request processing life cycle for web applications using JSF to construct the user interface.
  • ADF Faces filter and mapping : A servlet filter to ensure that ADF Faces is properly initialized by establishing an AdfFacesContext object. This filter also processes file uploads.
  • ADF resource servlet and mapping : A servlet to serve web application resources (images, style sheets, JavaScript libraries) by delegating to a ResourceLoader.
The JSF servlet and mapping configuration settings are automatically added to the web.xml file when you first create a JSF project.



12.  connection.xml  :-
  • This files contains configuration of database connection.
  • If webservice is exposed on an application then that web service connection configure on this file.


13.  jps-config.xml :-
  • This file contains the configuration of oracle platorm securities such as key store files etc.
Read More

Saturday 25 February 2017

Work with Master Detail relation using PlaceHolder Data Control?

1. Follow the steps from 1 to 13 from the post "How to create a PlaceHolder Data Control in Jdeveloper 12C ?".


2.  This is the 13th step from previous post.




3.    We have one PlaceHolder Data Type, Now we will create another Place Holder Data            Type named as "TwoPlaceHolderDataType".



       Open the SampleOnePlaceHolder.xml file and we have OnePlaveHolderDataType view instance which contains Id and Name attributes,  now we will create a relationship based on this Id. So select the "OnePlaceHolderDataType" on Data Type section and click on Add icon to add as a child of  OnePlaceHolderDataType.



4.  Following window appears.

     Now specify the file name, let say "TwoPlaceHolderDataType" and specify the package
     directory location.

     Now their is a Master-Detail Section.
     Join Attributes to Parent :- Here select parent attribute on which we have to do join or create a foreign key relation. So we have to do on basis of Id. Select Id and click ok.


5.  Here you will see that Id attribute is already added in  TwoPlaceHolderDataType.xml           Attribute tab.
    And also ViewLink is created between both view instance, named as "DTLink".



6.  Now we add one more attribute "NewName".



7.  Now add data into these attributes.



8.  Now we will check whether the ralation between OnePlaceHolderDataType and 
     TwoPlaceHolderDataType are done correct or not.

     We will check it at Model layer.
      Run the DataControl.dcx file by right click on this file.

      Here we can see that for Id = 0001 we had two data for child.



     and for Id = 0002 we had one data for child.



9.  Now we can use this relation at data control window, which can be used at page level, by drag and  drop it on page.


Read More

How to create a PlaceHolder Data Control in Jdeveloper 12C ?

Why we need placeholder data control ?

It is used to create a prototype or mock screens, which has no connections with DB or web services.

1.  Follow the post "How to create Oracle ADF Fusion Web Application?" to create an application, change Application name to "SamplePlaceHolderDataControlApp" and suffix to "samplePHDC".


2.  Right click on model project and select New -> From Gallery.



3. Following screen appears and Search with PlaceHolder Data Control and select the Placeholder Data Control and click ok.





4.  Fill the following fields :-


     Name :- Name of placeholder data control. Lets say "SampleOnePlaceHolder".
     Package  :- Select the package where to put this file.
     Description :- Optional field
    
   Then click ok.



5.  Check out the project structure, you will see that SampleOnePlaceHolder.xml file created and its entry in Data Control.



6.  Now we will create the PlaceHolder Data Types.

     Open the "SampleOnePlaceHolder.xml" file. 


7.  On the Data Type section select the data control placeholder and click on add icon mention on right top on data type section.



8.  A popup window appears and mention the following details :-

    File Name :- Name of placeholder data type.Lets say "OnePlaceholderDataType.xml"
    Package :- Directory to place this xml file.

    If you want to import csv file then click on "Import from" checkbox and select the file from the location.

   Here we create our own data, so unchecked the "Import from" checkbox.and click ok.



9.  A view object is created with an xml file "OnePlaceHolderDataType.xml".And also added as an iterator on data control which will be accessible at view layer.

Now we will start creating the attribute. Open the "OnePlaceHolderDataType.xml" file and click on Attribute tab.






10.   Start adding the attributes by clicking on Add icon.

        Lets create two attribute Id and Name and provide the constraints like primary key, IsUnique, IsQueriable, IsNotNull, Deafult value in an attribute property window.

        You can also specify the default  components for this attribute to show at UI such as use that attribute as a checkbox, inputbox as lov, chose, date etc. Here we are not using any component , so set it as default value.

        So do it same for Name attribute according to the requirement.

        And at Data Control section two attributes added on placeholder data type iterator mentioned on orange circle.
         Here we had mentioned Format type = 0000. Example if data value is 1 then it will convert to 0001.




11.  Now start creating the static data for this two attribute fields.

       So click on Data tab in OnePlaceHolderDataType, and add the data by clicking on Add icon or we can import the data from csv file as well by clicking on import.



12.   Now we will test this at model layer to check whether the PlaceHolder Data control and its view object is created successfully or not.

        For this right click on the "DataControl.dcx" file and select run.




13.  Oracle ADF Model Tester window will open and then double click on OnePlaceHolderDayaType view instance.



14.  Now we will start implementing this placeholder on page.

      Create a jsf/jspx page , for this refer to the post "How to create JSF/JSPX page by using Jdeveloper 12c?", change the page name to "SamplePlaceHolderTestPage".



15.  Drag and Drop the iterator from data control to the page as a ADF Table.



16.   Now run this jspx page.



Work with master data relationship in placeholder data control refer to post "Work with Master Detail relation using PlaceHolder Data Control?".
Read More

Social Profiles

Google Plus Email

Popular Posts

palash dabkara . Powered by Blogger.

Followers

Copyright © Oracle ADF 12c (Application Development Framework) Tutorial for Beginners | Powered by Blogger
Design by Palash Dabkara