hi
Ever wondered what the ADF unbounded task-flow of an ADF application looked like at run-time?
Well, I did, when I was trying to use the "ADF EMG Task Flow Tester" [1] and it returned "Error 404 Not Found" [2] for its "faces/tftester" URL.
The following API allows to get to some interesting run-time information about the ADF unbounded task-flow:
public List<ActivityInfo> getActivityInfoList()
{
List<ActivityInfo> vActivityInfoList = new ArrayList<ActivityInfo>();
MetadataService vMetadataService = MetadataService.getInstance();
PageFlow vAdfPageFlow = vMetadataService.getAdfPageFlow();
Map<ActivityId, Activity> vActivities = vAdfPageFlow.getActivities();
Set<Map.Entry<ActivityId, Activity>> vActivitiesEntrySet = vActivities.entrySet();
for (Map.Entry<ActivityId, Activity> vActivitiesEntry : vActivitiesEntrySet)
{
vActivityInfoList.add(new ActivityInfo(vActivitiesEntry.getValue()));
}
return vActivityInfoList;
}
It allows to create a declarative component that shows some ADF unbounded task-flow information in a table, as shown in the screenshot
at http://www.consideringred.com/files/oracle/img/2013/utf-info-20130307.png
The declarative component can be found
at http://www.consideringred.com/files/oracle/2013/adflibMyTaskFlowInfoDeclComp-v0.01.jar
and its source
at http://www.consideringred.com/files/oracle/2013/MyTaskFlowInfoDeclCompApps-v0.01.zip
In the context of forum thread "
2232057" the screencast at http://screencast.com/t/MQT4mIj6 shows how to use such component (by creating a File System connection, adding the ADF Library to a ViewController project, and dropping the component on a page).
Note that the component in adflibMyTaskFlowInfoDeclComp-v0.01.jar is built using JDeveloper 11.1.1.6.0 and does not seem to be usable as such in JDeveloper 11.1.2.3.0 .
But when migrated an redeployed in JDeveloper 11.1.2.3.0 it seems to be working as expected, but also causes logged warnings (about "
... UNEXPECTED_CLIENT_OBJECT_TYPE ... oracle.adf.controller.internal.metadata.xml ...").
Note that using JDeveloper 11.1.2.3.0 would allow to build something similar with a "non internal" API, like the interfaces in the same package as oracle.adf.controller.metadata.model.Activity [3].
So, feedback is welcome about improving or using this declarative component.
- [1] http://java.net/projects/adf-task-flow-tester
- [2] http://java.net/jira/browse/ADF_TASK_FLOW_TESTER-13
- [3] http://docs.oracle.com/cd/E35521_01/apirefs.111230/e17480/oracle/adf/controller/metadata/model/Activity.html
regards
Jan Vervecken