while ( paramIr != null && paramName != null && paramValue != null && paramIr.hasNext( ) )
ScalarParameterHandle parameter = (ScalarParameterHandle) attrBean .findParameter( paramName );  if ( parameter != null && paramValue != null )
	protected void __execute( ) throws RemoteException	{		ViewerAttributeBean attrBean = (ViewerAttributeBean) context.getBean( );		Map parameterMap = new HashMap( );		String docName = attrBean.getReportDocumentName( );		IViewerReportDesignHandle designHandle = attrBean				.getReportDesignHandle( context.getRequest( ) );		try		{			InputOptions options = new InputOptions( );			options.setOption( InputOptions.OPT_REQUEST, context.getRequest( ) );			options.setOption( InputOptions.OPT_LOCALE, attrBean.getLocale( ) );			options.setOption( InputOptions.OPT_RTL, new Boolean( attrBean					.isRtl( ) ) );			options.setOption( InputOptions.OPT_IS_DESIGNER, new Boolean(					attrBean.isDesigner( ) ) );			Collection parameterList = attrBean.getParameterList( );			Iterator paramIr = null;			if ( parameterList != null )				paramIr = parameterList.iterator( );			if ( operation != null )			{				Oprand[] oprands = operation.getOprand( );				for ( int i = 0; i < oprands.length; i++ )				{					String paramName = oprands[i].getName( );					Object paramValue = oprands[i].getValue( );					while ( paramIr != null && paramName != null							&& paramValue != null && paramIr.hasNext( ) )					{						ParameterDefinition parameterObj = (ParameterDefinition) paramIr								.next( );						if ( paramName.equals( parameterObj.getName( ) ) )						{							ReportParameterConverter converter = new ReportParameterConverter(									parameterObj.getPattern( ), attrBean											.getLocale( ) );							paramValue = converter.parse(									paramValue.toString( ), parameterObj											.getDataType( ) );							break;						}					}					if ( paramName != null && paramName.length( ) > 0 )					{						parameterMap.put( paramName, paramValue );					}				}			}			getReportService( ).runReport( designHandle, docName, options,					parameterMap );		}		catch ( ReportServiceException e )		{			AxisFault fault = new AxisFault( );			fault.setFaultReason( e.getMessage( ) );			throw fault;		}	}