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.rcp/src/org/eclipse/birt/report/designer/ui/internal/rcp/wizards/WizardNewLibraryCreationPage.java
stream.close( );
		}
		catch ( IOException e )
		{
			ExceptionHandler.handle( e );
		}
		monitor.worked( 1 );
		monitor.setTaskName( OPENING_FILE_FOR_EDITING );
		getShell( ).getDisplay( ).asyncExec( new Runnable( ) {
			public void run( )
			{
				IWorkbench workbench = PlatformUI.getWorkbench( );
				IWorkbenchWindow window = workbench.getActiveWorkbenchWindow( );
				IWorkbenchPage page = window.getActivePage( );
				try
				{
					page.openEditor( new ReportEditorInput( file ),
							IReportEditorContants.LIBRARY_EDITOR_ID,
							true );
				}
				catch ( Exception e )
				{
					ExceptionHandler.handle( e );
				}
			}
		} );
		monitor.worked( 1 );
	}
}