this.engine = engine; this.archive = archive; this.systemId = systemId; try { archive.open( ); } catch ( Exception e ) { throw new EngineException( "Failed to open the report document", e ); } try { doRefresh( ); } catch ( EngineException ee ) { try { archive.close(); } catch(Exception ex) { } throw ee; }
this( null, engine, archive );
	public ReportDocumentReader( String systemId, IReportEngine engine, IDocArchiveReader archive ) throws EngineException	{		this.engine = engine;		this.archive = archive;		this.systemId = systemId;		try		{			archive.open( );		}		catch ( Exception e )		{			throw new EngineException( "Failed to open the report document", e );		}		try		{			doRefresh( );		}		catch ( EngineException ee )		{			try			{				archive.close(); 			}			catch(Exception ex)			{			}			throw ee; 		}	}