Bug 116706 Bad Class Cast in IDEReportEditor.java
So I'm trying to open a report with BIRT/Eclipse API using the BIRT 2.0 nightly build code (as of 11/16/2005). the file IDEReportEditor.java method private IFile getFile( IEditorInput input ) { return ( (ReportFileEditorInput) input ).getFile( ); } However, input can be ReportEditorInput which is also an IEditorInput (to support reports found outside projects and workspaces) which doesn't even have a getFile() method on it. This causes a deeply nested exception that causes the report desinger to not be able to show a report that might be physically located outside a workspace.
UI/org.eclipse.birt.report.designer.ui.ide/src/org/eclipse/birt/report/designer/ui/editors/IDEMultiPageReportEditor.java
list.addAll( reportDesignHandle.getWarningList( ) );
		for ( int i = 0, m = list.size( ); i < m; i++ )
		{
			ErrorDetail errorDetail = (ErrorDetail) list.get( i );
			IMarker marker = file.createMarker( IMarker.PROBLEM );
			
			if ( i < errorListSize )
				marker.setAttribute( IMarker.SEVERITY, IMarker.SEVERITY_ERROR );
			else
				marker.setAttribute( IMarker.SEVERITY, IMarker.SEVERITY_WARNING );
			marker.setAttribute( IMarker.MESSAGE, errorDetail.getMessage( ) );
			marker.setAttribute( IMarker.LINE_NUMBER, errorDetail.getLineNo( ) );
			marker.setAttribute( IMarker.LOCATION, errorDetail.getTagName( ) );
		}
	}
	
	public void doSave( IProgressMonitor monitor )
	{
		super.doSave( monitor );
		try
		{
			refreshMarkers(getEditorInput( ));
		}
		catch ( CoreException e )
		{
			e.printStackTrace();
		}
	}
	
	public void dispose( )