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.editors.schematic/src/org/eclipse/birt/report/designer/ui/editors/pages/ReportScriptFormPage.java
* @see org.eclipse.ui.part.EditorPart#doSaveAs()
	 */
	public void doSaveAs( )
	{
		Object adapter = ( (IEditorPart) this ).getAdapter( IReportProvider.class );
		if ( adapter != null )
		{
			IReportProvider provider = (IReportProvider) adapter;
			IPath path = provider.getSaveAsPath( getEditorInput( ) );
			final IEditorInput input = provider.createNewEditorInput( path );
			setInput( input );
			IRunnableWithProgress op = new IRunnableWithProgress( ) {
				public synchronized final void run( IProgressMonitor monitor )
						throws InvocationTargetException, InterruptedException
				{
					final InvocationTargetException[] iteHolder = new InvocationTargetException[1];
					try
					{
						IWorkspaceRunnable workspaceRunnable = new IWorkspaceRunnable( ) {
							public void run( IProgressMonitor pm )
									throws CoreException
							{
								try
								{
									execute( pm );
								}
								catch ( InvocationTargetException e )
								{
									
									iteHolder[0] = e;