Bug 210156 logger.entering methods causing NullPointerExceptions
Build ID: M20071023-1652 Steps To Reproduce: Run reports setting the birtReportEngine.changeLogLevel to Level.Fine More information: Line 46 of org.eclipse.birt.data.engine.impl.aggregation.AggregateTable goes like this: logger.entering( AggregateTable.class.getName( ), "AggregateTable", null ); This throws a null pointer exception in java.util.Logger.entering(String sourceClass, String sourceMethod, Object params[]) (Sun's j2sdk1.4.2_16) The expectation may have been that this would call the method with just Object param (as opposed to Object[] params). The fix would be to use the entering(String sourceClass, String sourceMethod) instead. Other Files that have this issue: Searching with this regexp: logger.entering\([^,;]*[\n]*,[\n]*[^,;]*[\n]*,[\n]*[^,;]*null there seem to be a couple more: 1. org.eclipse.birt.data.engine.impl.DataEngineImpl.defineDataSet( IBaseDataSetDesign dataSet ) 2. org.eclipse.birt.data.engine.impl.DataEngineImpl.defineDataSource( IBaseDataSourceDesign dataSource ) 3.
data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/impl/DataEngineImpl.java
DataSourceRuntime getDataSourceRuntime( String name )
	{
		return (DataSourceRuntime) dataSources.get( name );
	}
	/**
	 * Returns the design of a data set. If data set is not found, returns null.
	 */
	IBaseDataSetDesign getDataSetDesign( String name )
	{
		return (IBaseDataSetDesign) dataSetDesigns.get( name );
	}
	/**
	 * Verifies the elements of a report query spec
	 * and provides a hint to the query to prepare and optimize 
	 * an execution plan.
	 * The given querySpec could be a ReportQueryDefn 
	 * (raw data transform) spec generated by the factory 
	 * based on static definition found in a report design.
	 * <p> 
	 * This report query spec could be further refined by FPE 
	 * during engine execution after having resolved any related
	 * runtime condition.  This is probably not in BIRT Release 1.
	 * For example, a nested report item might not be rendered based
	 * on a runtime condition.  Thus its associated data expression
	 * could be removed from the report query defn given to 
	 * DtE to prepare.
	 * <p>
	 * During prepare, the DTE does not open a data set. 
	 * In other words, any before-open script on a data set will not be
	 * evaluated at this stage.  That could mean that certain query