Conditionally colouring of row cell in adf

Some time, in our application we need to display some table cells highlighted with some colours.for different condition we need Different colour of row or some particular cell. This can be possible by using expression language(EL) .We can write an ternary operation in expression language(EL).For example if we are displaying data in tabular structure .And we want to highlight the Employee id which have salary eq to ‘50000’.For this , we can write below expression in INLINE PROPERTY OF EMPLOYEE ID.
After writing this EL in INLINE Property we can give conditionally coloring in table cells.

 
background-color:#{(row.salary eq "50000"?'Aqua':'')}

This El mean if salary of corresponding row is equal to 50000 then table cell color will be aqua. Similarly we can use GT and LT for greater than or less than respectively.

Refreshing the page by java mehtod in Oracle ADF

In Oracle ADF, for refreshing the page after doing some operation in database we need to refresh the Page ,which is very needed to display the right content.For this we need to write java method in page.java file. Write that method anywhere in java file and call that method anywhere where you want to refresh the page.

protected void refreshPage() {
      FacesContext fc = FacesContext.getCurrentInstance();
      String refreshpage = fc.getViewRoot().getViewId();
 ViewHandler ViewH =                                                                                                                   
 fc.getApplication().getViewHandler();
      UIViewRoot UIV = ViewH.createView(fc refreshpage);
      UIV.setViewId(refreshpage);
      fc.setViewRoot(UIV);
}

This is only method you need to write to refresh the page.

Executing the view object query in Oracle ADF

In oracle ADF, for executing the view object query we need to write code for that.This code is needed for refreshing the table content after executing some DML operation.For that we need to execute the query of view object.For that write an in application module Impl.java file.For an example look the below code-

 


    public void refreshVinayView()
    {
VinayViewObject  vinay= get VinayViewObject 1();
        vinay.executeQuery();
    }

After writing in AppmoduleImpl.java file.save your application and double click on app module.Go to client interface and shuttle right to this method “refreshVinayView” .
After that From where you what to execute the view object query.For example- we are deleting some row from table and want to reexecute the query again then we can write the code in specific java file of some .jspx file.Sample code is as below.

   FacesContext fctx = FacesContext.getCurrentInstance();
        ValueBinding vb = 
            fctx.getApplication().createValueBinding("#{bindings}");
        DCBindingContainer dcb = (DCBindingContainer)vb.getValue(fctx);
        OperationBinding operation = 
            (OperationBinding)dcb.get("refreshVinayView ");
        operation1.execute();

One more thing needed.Go to page definition of that specific .jspx file. And in Binding tab in structure window.Right click the binding tab and go to method action.An “Action binding editor” window will open.Select your java method in SELECT AN ACTION drop down and press ok.

This is all you need to execute the view object the query.