tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
2063
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    maksbor80 maksbor80 ist offline Mitglied Bronze
    Registriert seit
    Jun 2005
    Beiträge
    35
    Hallo...

    In meiner Anwendung habe ich ApplicationActionBarAdvisor.makeActions eine Action für den Preferences Dialog gelegt.
    PHP-Code:
    iShowPreferencesAction ActionFactory.PREFERENCES.create(window);
        
    iShowPreferencesAction.setImageDescriptor(Activator.getInstance().getImageDescriptor(Activator.ICON_SETTINGS_16));
        
    register(iShowPreferencesAction); 
    Den PreferenceManager habe ich in ApplicationWorkbenchWindowAdvisor.postWindowOpen wie folgt erweitert
    PHP-Code:
    final PreferenceManager manager window.getWorkbench().getPreferenceManager();
        
    // Remove Generals
        
    manager.removeAll();
        
    // Add printer settings
        
    IPreferenceNode node = new PreferenceNode(PrinterPage.ID, new PrinterPage());
        
    manager.addToRoot(node); 
    Ich habe eine PreferencesPage angelegt, die wie folgt aussieht:

    PHP-Code:
    public class PrinterPage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage {
      public static final 
    String ID PrinterPage.class.getName();
      public 
    PrinterPage() {
        
    super(FLAT);
        
    setPreferenceStore(Activator.getInstance().getPreferenceStore());
        
    setTitle("Drucker");
        
    setDescription("Legen Sie bitte Standard- und Barcode-Drucker fest.");
      }

      protected 
    void createFieldEditors() {
        
    addField(new PrinterListEditor(PrintFactory.STANDARD"Standard Drucker"getFieldEditorParent()));
        
    addField(new PrinterListEditor(PrintFactory.BARCODE"Barcode Drucker"getFieldEditorParent()));
      }

      public 
    void init(IWorkbench workbench) {
      }


    Das ganze funktioniert soweit prima. Der Preferences Dialog öffnet sich und ich kann den Pfad verändern und durch klicken auf Ok speichern. Ich schliesse die Applikation, starte sie erneut, und der gespeicherte Wert ist noch vorhanden. Wenn ich die Applikation jedoch nicht schliesse und den Preferences Dialog ein zweites Mal durch klicken auf den Buuton aufrufe erscheint ein Error Message Dialog mit dem Hinweis "An Error has occurred, see error log for more details". Dann kommt der Preferences Editor ohne Inhalt!

    Hat jemand nen Tipp woran das liegen kann?

    Logfile sieht danach wie folgt aus:

    !SESSION 2008-08-18 19:09:32.830 -----------------------------------------------
    !ENTRY org.eclipse.jface 4 2 2008-08-18 19:09:50.264
    !MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.jface".
    !STACK 0
    org.eclipse.core.runtime.AssertionFailedException: null argument:
    at org.eclipse.core.runtime.Assert.isNotNull(Assert.java:84)
    at org.eclipse.core.runtime.Assert.isNotNull(Assert.java:72)
    at org.eclipse.jface.preference.PreferenceNode.createObject(PreferenceNode.java:135)
    at org.eclipse.jface.preference.PreferenceNode.createPage(PreferenceNode.java:157)
    at org.eclipse.jface.preference.PreferenceDialog.createPage(PreferenceDialog.java:1294)
    at org.eclipse.ui.internal.dialogs.FilteredPreferenceDialog.createPage(FilteredPreferenceDialog.java:31 3)
    at org.eclipse.jface.preference.PreferenceDialog.showPage(PreferenceDialog.java:1185)
    at org.eclipse.ui.internal.dialogs.FilteredPreferenceDialog.showPage(FilteredPreferenceDialog.java:433)
    at org.eclipse.jface.preference.PreferenceDialog$9.selectionChanged(PreferenceDialog.java:698)
    at org.eclipse.jface.viewers.StructuredViewer$3.run(StructuredViewer.java:842)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
    at org.eclipse.core.runtime.Platform.run(Platform.java:857)
    at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:46)
    at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:199)
    at org.eclipse.jface.viewers.StructuredViewer.firePostSelectionChanged(StructuredViewer.java:840)
    at org.eclipse.jface.viewers.StructuredViewer.setSelection(StructuredViewer.java:1642)
    at org.eclipse.jface.viewers.TreeViewer.setSelection(TreeViewer.java:1095)
    at org.eclipse.jface.preference.PreferenceDialog.selectSavedItem(PreferenceDialog.java:1009)
    at org.eclipse.ui.internal.dialogs.FilteredPreferenceDialog.selectSavedItem(FilteredPreferenceDialog.ja va:476)
    at org.eclipse.jface.preference.PreferenceDialog$4.run(PreferenceDialog.java:369)
    at org.eclipse.swt.custom.BusyIndicator.showWhile(Unknown Source)
    at org.eclipse.jface.preference.PreferenceDialog.createContents(PreferenceDialog.java:365)
    at org.eclipse.jface.window.Window.create(Window.java:426)
    at org.eclipse.jface.dialogs.Dialog.create(Dialog.java:1083)
    at org.eclipse.ui.internal.dialogs.WorkbenchPreferenceDialog.createDialogOn(WorkbenchPreferenceDialog.j ava:96)
    at org.eclipse.ui.dialogs.PreferencesUtil.createPreferenceDialogOn(PreferencesUtil.java:85)
    at org.eclipse.ui.internal.OpenPreferencesAction.run(OpenPreferencesAction.java:64)
    at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
    at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:54 6)
    at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:490)
    at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:402)
    at org.eclipse.swt.widgets.EventTable.sendEvent(Unknown Source)
    at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Unknown Source)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source)
    at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2389)
    at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353)
    at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2219)
    at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:289)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:461)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
    at com.client.gui.Application.start(Application.java:47)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:169)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java: 106)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176)
    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:508)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1173)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1148)


    Danke!
    Geändert von maksbor80 (18.08.08 um 19:41 Uhr) Grund: Falscher Code kopiert
     

  2. #2
    Leetus Leetus ist offline Rookie
    Registriert seit
    Jan 2009
    Beiträge
    8
    Hi maksbor80,

    ich frage mich warum in deiner Ecxeption JFace steht. Falsche Preferences importiert?

    Gruß
    Leetus
     

  3. #3
    anouqrat anouqrat ist offline Grünschnabel
    Registriert seit
    Dec 2010
    Beiträge
    1
    Hallo
    Zitat von maksbor80:
    Ich schliesse die Applikation, starte sie erneut, und der gespeicherte Wert ist noch vorhanden. Wenn ich die Applikation jedoch nicht schliesse und den Preferences Dialog ein zweites Mal durch klicken auf den Buuton aufrufe erscheint ein Error Message Dialog mit dem Hinweis "An Error has occurred, see error log for more details
    Ich habe nämlich das gleiche Problem.

    @maksbor80
    Es ist lange her, dass Du diesen Thread gestartet hast. Ich vermute Du hast das Problem gelöst. Könntest Du, beziehungsweise derjenige, der die Lösung kennt, mir bitte mitteilen ?

    Für eine schnelle Hilfe bin ich sehr dankbar.

    Beste Grüße,
    Nouqrat
     

Ähnliche Themen

  1. Antworten: 0
    Letzter Beitrag: 11.01.11, 21:40
  2. Antworten: 4
    Letzter Beitrag: 22.03.06, 20:50
  3. Antworten: 0
    Letzter Beitrag: 06.10.04, 14:03
  4. PROBLEM! Pinnacle 2 GB Begrenzung Windows 2000 DC 50 PROBLEM!
    Von hennym im Forum Videoschnitt, Videotechnik & -produktion
    Antworten: 6
    Letzter Beitrag: 17.09.03, 22:09
  5. Antworten: 6
    Letzter Beitrag: 13.06.02, 12:29