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
final String methodName = "doGetClob( String )";
		sm_logger.entering( sm_className, methodName, paramName );
		
		try
		{
		    IClob ret = getAdvancedStatement().getClob( paramName );
			sm_logger.exiting( sm_className, methodName, ret );
			return ret;
		}
		catch( OdaException ex )
		{
		    return logAndThrowGetClobParamException( methodName, 
		            						paramName, ex );
		}
		catch( UnsupportedOperationException ex )
		{
		    return logAndThrowGetClobParamException( methodName, 
											paramName, ex );
		}
	}
	
	private IClob logAndThrowGetClobParamException( String methodName, 
	        Object parameterId, Exception ex ) throws DataException
	{
		sm_logger.logp( Level.SEVERE, sm_className, methodName, 
				"Cannot get CLOB data from parameter.", ex );
		throw new DataException( ResourceConstants.CANNOT_GET_CLOB_FROM_PARAMETER, 
		        				ex, parameterId );
	}