Updating Data Control Constructor
Add the following code to the Data Control class constructor, EquipWorkOrderDC():
String jargonCode = (String) ADFContext.getCurrent().getPageFlowScope().get("jargonCode");
String handshakeId = (String) ADFContext.getCurrent().getPageFlowScope().get("handshakeId");
if (handshakeId == null || (handshakeId != null && handshakeId.length() == 0))
{
logger.finest("***** Handshake Id not passed to task flow. Creating manual connection. *****");
runningInJDEADFContainer = false;
userBean = new E1UserSessionBean(AIS_SERVER, USER_NAME, PASSWORD, ENVIRONMENT, ROLE, DEVICE);
}
else
{
// Initialize application's about properties when running in the ADF container.
E1AdfUtils.intializeAppInstance("/com/oracle/e1/E137001/");
}
loginEnv = E1AdfUtils.getLoginEnvironment(userBean);
if (loginEnv != null)
{
logger.finest("***** Acquired valid LoginEnvironment object. *****");
List<String> reqCapabilities = loginEnv.getRequiredCapabilities();
reqCapabilities.add(AISClientCapability.JARGON);
reqCapabilities.add(AISClientCapability.DATA_SERVICE);
reqCapabilities.add(AISClientCapability.DATA_SERVICE_AGGREGATION);
// Retrieve translated labels.
retrieveLabelText(jargonCode);
// Retrieve initial data set.
retrieveData(groupByFilter);
}
else
{
// When a connection to E1 is not established, add a blank data item to each chart's data list,
// so empty charts display on the page .
logger.finest("***** No chart data. Adding empty data values to chart data lists. *****");
understatedChartData.add(new ChartDataItem(".", "", 0.0));
overstatedChartData.add(new ChartDataItem(".", "", 0.0));
logger.severe("***** Valid LoginEnvironment object is missing. *****");
processErrorException("Connection failed. Please contact your system administrator");
}
The constructor will establish a connection with AIS and add AIS services used by the application to the required capabilities list.