“java.lang.IllegalStateException: Attempt to validate an already invalid RegionSite” Error in ADF

Yesterday , I am working in region, I drag drop the table and so on.Suddenly i start getting this error -“java.lang.IllegalStateException: Attempt to validate an already invalid RegionSite”.

How to resolve this. Well there are many solution for this.

1. Check if the default activity is set on the taskflow included in the .jspx, if not try to set the default activity.
2. Check all bindings of page. if you not able to find it then delete it and create again.
3. Add the “-Djbo.debugoutput=console” in JAVA options of the Run/Debug/Profile to see the error
4. Check if all the library references for the UI project are proper and that is also accessible.
5. All The DB connection is available and active,the tables/views referenced are available in the D, All web services, if used, are active and accessible .

sort of column of table in ADF -Techartifact

Requirement- To sort an particular column by default on page load.

We can achive by changing the iterator property. Suppose we are having an table and we want to sort the table on page load by taskrole.
Click on bindings –

Now select the right iterator and click on edit

click on sort criteria tab and select the right column and choose sort order-

Happy coding with Techartifact

ADF – Groovy for Total Sum of a Column in a Table

ADF – Groovy for Total Sum of a Column in a Table

We will be looking in this article as how we can add Total of a column in a table. Very often we require to have total of a column in a table. For example , we might need total sum of Salary column in the table.
We will be leveraging power of Groovy in accomplishing this task.
So lets see how we can do this.
Use Case :- Add a Total Salary Attribute below Salary column in Employees Table.
Model Project
Considering that we have EmployeesView VO object which is based on Employees EO, go to attributes of VO and click add new attribute. Select “Add new Attribute”. It will by default be transient. Give this attribute  name as TotalSal.
Now go to View Accessors tab and click on green + sign to create new View Accessor.
Select EmployeesView from the first window and shuttle it so that you can see like below.
Do ok and it should be like below screenshot.
Now go to attributes tab and select the new transient attribute (TotalSal).
Give its Default value as Expression and give Groovy expression as EmployeesView1.sum(“Salary”) .
View Project
Create a new page. Drag and Drop EmployeesVO from data control and create a new read only table “without” TotalSal Attribute.
Now go to Salary Column in Structure and do a right click and select footer from facet as shown below.
Now from EmployeesView1 in DataControl, drag and drop TotalSal column in this new footer facet.
Now go to bindings and create a new binding for this variable.
 And change the value of footer output text with this binding.
Save all and run this page.
Hope this was useful.
Happy Learning !!
Rohan Walia