IDataSource dataSource;
IDataSet dataSet;
String connectionName;
String outputType;
JasperReportEngineTemplate template;
JasperReportEngineInstance engineInstance;
logger.debug("IN");
try {
// log some contextual infos
logger.debug("User: [" + servletIOManager.getUserId() + "]");
logger.debug("Document: [" + servletIOManager.getDocumentId() + "]");
dataSource = servletIOManager.getDataSource();
logger.debug("Datasource: [" + (dataSource == null? dataSource: dataSource.getLabel()) + "]");
if (dataSource==null){
logger.warn("This document doesn't have the Data Source");
}
dataSet = servletIOManager.getDataSet();
logger.debug("Dataset: [" + (dataSet == null? dataSource: dataSet.getName()) + "]");
// read and log builtin parameters
connectionName = servletIOManager.getParameterAsString(CONNECTION_NAME);
logger.debug("Parameter [" + CONNECTION_NAME + "] is equal to [" + connectionName + "]");
outputType = servletIOManager.getParameterAsString(OUTPUT_TYPE);
logger.debug("Parameter [" + OUTPUT_TYPE + "] is equal to [" + outputType + "]");
if(outputType == null) {
outputType = JasperReportEngine.getConfig().getDefaultOutputType();
servletIOManager.getEnv().put(OUTPUT_TYPE, outputType);
logger.debug("Parameter [" + OUTPUT_TYPE + "] has been set to the default value [" + servletIOManager.getEnv().get(OUTPUT_TYPE) + "]");
}
// this proxy is used by ScriptletChart to execute and embed external chart into report
servletIOManager.getEnv().put(EngineConstants.ENV_DOCUMENT_EXECUTE_SERVICE_PROXY, servletIOManager.getDocumentExecuteServiceProxy());
servletIOManager.auditServiceStartEvent();
template = new JasperReportEngineTemplate(servletIOManager.getTemplateName(), servletIOManager.getTemplate());
File reportOutputDir = JasperReportEngine.getConfig().getReportOutputDir();
File reportFile = File.createTempFile("report", "." + outputType, reportOutputDir);
DataSetServiceProxy proxyDataset = servletIOManager.getDataSetServiceProxy();