Bug 145925 exception thrown out when create attached report using engine API
the following exception was thrown out in Java console when run, render, and runandrender attached reports respectively using engine API. SEVERE: Cannot find input parameter. java.lang.UnsupportedOperationException: No named Parameter supported. at org.eclipse.birt.report.data.oda.jdbc.Statement.findInParameter(Statement.java:661) at org.eclipse.datatools.connectivity.oda.consumer.helper.OdaQuery.findInParameter(OdaQuery.java:985) at org.eclipse.birt.data.engine.odaconsumer.PreparedStatement.findInParameter(PreparedStatement.java:2649) at org.eclipse.birt.data.engine.odaconsumer.PreparedStatement.getRuntimeParameterIndexFromName(PreparedStatement.java:1549) at org.eclipse.birt.data.engine.odaconsumer.PreparedStatement.updateWithParameterHints(PreparedStatement.java:1513) at org.eclipse.birt.data.engine.odaconsumer.PreparedStatement.mergeParamHintsWithMetaData(PreparedStatement.java:1455) at org.eclipse.birt.data.engine.odaconsumer.PreparedStatement.getParameterMetaData(PreparedStatement.java:1336) at org.eclipse.birt.data.engine.executor.DataSourceQuery.getParameterMetaData(DataSourceQuery.java:433) at org.eclipse.birt.data.engine.executor.DataSourceQuery.hasOutputParams(DataSourceQuery.java:518) at org.eclipse.birt.data.engine.executor.DataSourceQuery.execute(DataSourceQuery.java:487) at org.eclipse.birt.data.engine.impl.PreparedOdaDSQuery$OdaDSQueryExecutor.executeOdiQuery(PreparedOdaDSQuery.java:257) at org.eclipse.birt.data.engine.impl.QueryExecutor.execute(QueryExecutor.java:677) at org.eclipse.birt.data.engine.impl.ServiceForQueryResults.executeQuery(ServiceForQueryResults.java:147) at org.eclipse.birt.data.engine.impl.QueryResults.getResultIterator(QueryResults.java:159) at org.eclipse.birt.report.engine.data.dte.DteResultSet.<init>(DteResultSet.java:100) at org.eclipse.birt.report.engine.data.dte.DteDataEngine.doExecuteQuery(DteDataEngine.java:121) at org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.execute(AbstractDataEngine.java:214) at org.eclipse.birt.report.engine.presentation.LocalizedEmitter.executeQueries(LocalizedEmitter.java:864) at org.eclipse.birt.report.engine.presentation.LocalizedEmitter.startExtendedContent(LocalizedEmitter.java:676) at org.eclipse.birt.report.engine.presentation.LocalizedEmitter.startForeign(LocalizedEmitter.java:448) at org.eclipse.birt.report.engine.presentation.WrappedEmitter.startForeign(WrappedEmitter.java:209) at org.eclipse.birt.report.engine.presentation.DefaultPaginationEmitter.startForeign(DefaultPaginationEmitter.java:488) at org.eclipse.birt.report.engine.executor.ExtendedItemExecutor.execute(ExtendedItemExecutor.java:103) at org.eclipse.birt.report.engine.executor.ReportExecutorVisitor.visitExtendedItem(ReportExecutorVisitor.java:83) at org.eclipse.birt.report.engine.ir.ExtendedItemDesign.accept(ExtendedItemDesign.java:30) at org.eclipse.birt.report.engine.executor.TableItemExecutor.accessRow(TableItemExecutor.java:644) at org.eclipse.birt.report.engine.executor.TableItemExecutor.accessTableBand(TableItemExecutor.java:521) at org.eclipse.birt.report.engine.executor.TableItemExecutor.accessGroupHeader(TableItemExecutor.java:462) at org.eclipse.birt.report.engine.executor.ListingElementExecutor.accessQuery(ListingElementExecutor.java:185) at org.eclipse.birt.report.engine.executor.TableItemExecutor.execute(TableItemExecutor.java:158) at org.eclipse.birt.report.engine.executor.ReportExecutorVisitor.visitTableItem(ReportExecutorVisitor.java:205) at org.eclipse.birt.report.engine.ir.TableItemDesign.accept(TableItemDesign.java:69) at org.eclipse.birt.report.engine.executor.ReportExecutor.execute(ReportExecutor.java:129) at org.eclipse.birt.report.engine.executor.ReportExecutor.execute(ReportExecutor.java:89) at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(RunAndRenderTask.java:171) at org.eclipse.birt.test.performance.RunRenderThread.run(RunRenderThread.java:105)
data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/odaconsumer/PreparedStatement.java
}
		
		sm_logger.exiting( sm_className, methodName );
	}
	private void validateAndAddParameterHint( ParameterHint newParameterHint )
		throws DataException
	{
		String methodName = "validateAndAddParameterHint";		
		sm_logger.entering( sm_className, methodName, newParameterHint );
		
		ArrayList parameterHintsList = getParameterHints();	
		String newParamHintName = newParameterHint.getName();
		int newParamHintIndex = newParameterHint.getPosition();
		for( int i = 0, n = parameterHintsList.size(); i < n; i++ )
		{
			ParameterHint existingParamHint = 
				(ParameterHint) parameterHintsList.get( i );
			
			String existingParamHintName = existingParamHint.getName();
			if( ! existingParamHintName.equals( newParamHintName ) )
			{
				int existingParamHintPosition = existingParamHint.getPosition();
				
				 
				
				if( newParamHintIndex == 0 ||
					existingParamHintPosition != newParamHintIndex )
					continue;