Bug 314631 Cann't get correct default values for parameters that with non-constant default value expressions
Steps to reproduce: 1. create a report with a scalar parameter that has non-constant default value expression such as BirtDateTime.today() 2. setup a project to get the default values of the parameter in BIRT runtime Eg. IReportEngine engine = createReportEngine( ); IRunnable runnable = engine.openReportDesign( REPORT_DESIGN ); IGetParamaterDefinitionTask task = engine.createGetParameterDefinitionTask( runnable ); HashMap result = task.getDefaultValues(); Expect result: The result map contains a parameter name and default value pair in which the default value is a Date instance of today. Actural result: The default value is null.
engine/org.eclipse.birt.report.engine/src/org/eclipse/birt/report/engine/api/impl/GetParameterDefinitionTask.java
{
			int last = values.length - 1;
			for ( ; last >= 0; last-- )
			{
				if ( !types[last] )
				{
					tempValues[last] = values[last];
				}
				else
				{
					tempValues[last] = ( (Object[]) values[last] )[indexes[last]];
				}
			}
			return tempValues;
		}
		public boolean hasNext( )
		{
			boolean has = cur < size;
			if ( cur > 0 && has )
			{
				int last = indexes.length - 1;
				for ( ; last >= 0; last-- )
				{
					if ( !types[last] || lengths[last] == 1 )
						continue;
					if ( indexes[last] + 1 < lengths[last] )
					{
						indexes[last]++;
						break;
					}