Bug 121111 Bad event handler class name does not cause an error
Open a report design, open any Data Set's Property editor. Type in an invalid Java class name for the "Event Handler Class" property, say "aaa". Preview a report that uses that Data Set. The report executes normally. No error is shown. Event handlers are an integral part of a report design, and if a script handler class is not found, or if the handler throws a runtime exception, Report Engine should either stop the report execution, or show the error message in the generated report. (Tested with the 2005-12-15 nightly build)
engine/org.eclipse.birt.report.engine/src/org/eclipse/birt/report/engine/adapter/ModelDteApiAdapter.java
import org.eclipse.birt.report.engine.script.internal.ScriptDataSourceScriptExecutor;
import org.eclipse.birt.report.model.api.ColumnHintHandle;
import org.eclipse.birt.report.model.api.ComputedColumnHandle;
import org.eclipse.birt.report.model.api.DataSetHandle;
import org.eclipse.birt.report.model.api.DataSetParameterHandle;
import org.eclipse.birt.report.model.api.DataSourceHandle;
import org.eclipse.birt.report.model.api.ExtendedPropertyHandle;
import org.eclipse.birt.report.model.api.FilterConditionHandle;
import org.eclipse.birt.report.model.api.OdaDataSetHandle;
import org.eclipse.birt.report.model.api.OdaDataSourceHandle;
import org.eclipse.birt.report.model.api.ParamBindingHandle;
import org.eclipse.birt.report.model.api.ReportElementHandle;
import org.eclipse.birt.report.model.api.ResultSetColumnHandle;
import org.eclipse.birt.report.model.api.ScriptDataSetHandle;
import org.eclipse.birt.report.model.api.ScriptDataSourceHandle;
import org.eclipse.birt.report.model.api.elements.DesignChoiceConstants;
import org.eclipse.birt.report.model.api.metadata.IPropertyDefn;
import org.eclipse.birt.report.model.elements.OdaDataSet;
import org.mozilla.javascript.Scriptable;
/**
 * An adapter class that creates data engine API interface objects from
 * the model.api objects for data set and data source definition.
 * 
 * The user of this adaptor can optionally provide an associated IReportContext
 * object and a Javascript scope. IReportContext is used to provide a context
 * for executing data source and data set event handlers. The Javascript
 * scope is used to evaluate data source and data set binding expressions. If a scope
 * is not provided, data source and data set bindings will not take effect. 
 */
public class ModelDteApiAdapter