cannot be cast to org.eclipse.ui.ide.FileStoreEditorInput [message #332624] |
Sun, 02 November 2008 16:41  |
Eclipse User |
|
|
|
Hi there!
I have plugin written for 3.2. Now I try to run with 3.3, when I save my
editor context I get exception.
My EditorInput implements only IEditorInput. What is the problem?
java.lang.ClassCastException: ira.editors.EditorInput cannot be cast to
org.eclipse.ui.ide.FileStoreEditorInput
at ira.editors.Editor.doSave(Editor.java:122)
at org.eclipse.ui.internal.DefaultSaveable.doSave(DefaultSaveab le.java:54)
at org.eclipse.ui.Saveable.doSave(Saveable.java:212)
at
org.eclipse.ui.internal.SaveableHelper.doSaveModel(SaveableH elper.java:339)
at org.eclipse.ui.internal.SaveablesList$4.run(SaveablesList.ja va:610)
at org.eclipse.ui.internal.SaveableHelper$4.run(SaveableHelper. java:266)
at
org.eclipse.jface.operation.ModalContext.runInCurrentThread( ModalContext.java:458)
at org.eclipse.jface.operation.ModalContext.run(ModalContext.ja va:366)
at
org.eclipse.jface.window.ApplicationWindow$1.run(Application Window.java:758)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator .java:70)
at
org.eclipse.jface.window.ApplicationWindow.run(ApplicationWi ndow.java:755)
at org.eclipse.ui.internal.WorkbenchWindow.run(WorkbenchWindow. java:2487)
at
org.eclipse.ui.internal.SaveableHelper.runProgressMonitorOpe ration(SaveableHelper.java:274)
at org.eclipse.ui.internal.SaveablesList.saveModels(SaveablesLi st.java:619)
at
org.eclipse.ui.internal.SaveablesList.promptForSaving(Saveab lesList.java:583)
at
org.eclipse.ui.internal.SaveablesList.promptForSavingIfNeces sary(SaveablesList.java:423)
at
org.eclipse.ui.internal.SaveablesList.preCloseParts(Saveable sList.java:383)
at
org.eclipse.ui.internal.WorkbenchPage.closeEditors(Workbench Page.java:1315)
at
org.eclipse.ui.internal.WorkbenchPage.closeEditor(WorkbenchP age.java:1402)
at org.eclipse.ui.internal.EditorPane.doHide(EditorPane.java:61 )
at org.eclipse.ui.internal.PartStack.close(PartStack.java:543)
at org.eclipse.ui.internal.EditorStack.close(EditorStack.java:2 06)
at org.eclipse.ui.internal.PartStack$1.close(PartStack.java:122 )
at
org.eclipse.ui.internal.presentations.util.TabbedStackPresen tation$1.handleEvent(TabbedStackPresentation.java:83)
at
org.eclipse.ui.internal.presentations.util.AbstractTabFolder .fireEvent(AbstractTabFolder.java:267)
at
org.eclipse.ui.internal.presentations.util.AbstractTabFolder .fireEvent(AbstractTabFolder.java:276)
at
org.eclipse.ui.internal.presentations.defaultpresentation.De faultTabFolder.access$1(DefaultTabFolder.java:1)
at
org.eclipse.ui.internal.presentations.defaultpresentation.De faultTabFolder$1.closeButtonPressed(DefaultTabFolder.java:70 )
at
org.eclipse.ui.internal.presentations.PaneFolder.notifyClose Listeners(PaneFolder.java:626)
at
org.eclipse.ui.internal.presentations.PaneFolder$3.close(Pan eFolder.java:206)
at org.eclipse.swt.custom.CTabFolder.onMouse(CTabFolder.java:21 71)
at org.eclipse.swt.custom.CTabFolder$1.handleEvent(CTabFolder.j ava:324)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.ja va:3823)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3422)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2382)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2346)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:21 98)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:493)
at
org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java:288)
at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:488)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
at myrcp.Application.run(Application.java:195)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at
org.eclipse.equinox.internal.app.EclipseAppContainer.callMet hodWithException(EclipseAppContainer.java:574)
at
org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:195)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .runApplication(EclipseAppLauncher.java:110)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .start(EclipseAppLauncher.java:79)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:386)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java: 549)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
at org.eclipse.equinox.launcher.Main.main(Main.java:1212)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Re: cannot be cast to org.eclipse.ui.ide.FileStoreEditorInput [message #332885 is a reply to message #332878] |
Wed, 12 November 2008 08:26  |
Eclipse User |
|
|
|
Originally posted by: andrey.int.com
Create a new file and open non existing file are different things. If you
open file which doesn't exixt (someone deleted it) this is an exceptional
situation and you have to notify user. Creating a new file is regular
procedure, you have to create new editor, that's it. What I found in eclipse
sources (Java editor probably) is creating special implementation of
IEditorInput which is not connected to any file. Is it a supposed way to
create new editor?
Thank you,
Andrey
"Prakash G.R." <grprakash@gmail.com> wrote in message
news:gfdu71$e2d$1@build.eclipse.org...
>I tried opening an editor on a non-existing file. It works fine
>
> IFileStore store = EFS.getLocalFileSystem().getStore(new
> Path("C:\\NoSuchFile.txt"));
> IDE.openEditor(activePage, new FileStoreEditorInput(store),
> "org.eclipse.ui.DefaultTextEditor");
>
> So probably the issue would be in your editor. Probably in the place
> where you create your model from the file (setInput?), check whether the
> file exists and if not, create an empty model.
>
> - Prakash
> --
>
> http://blog.eclipse-tips.com
>
>
|
|
|
Powered by
FUDForum. Page generated in 0.04799 seconds