Index: trunk/src/org/openstreetmap/josm/gui/dialogs/relation/actions/RefreshAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/relation/actions/RefreshAction.java	(revision 9660)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/relation/actions/RefreshAction.java	(revision 9661)
@@ -14,8 +14,7 @@
 import org.openstreetmap.josm.gui.HelpAwareOptionPane;
 import org.openstreetmap.josm.gui.HelpAwareOptionPane.ButtonSpec;
-import org.openstreetmap.josm.gui.dialogs.relation.GenericRelationEditor;
+import org.openstreetmap.josm.gui.dialogs.relation.IRelationEditor;
 import org.openstreetmap.josm.gui.dialogs.relation.MemberTable;
 import org.openstreetmap.josm.gui.dialogs.relation.MemberTableModel;
-import org.openstreetmap.josm.gui.dialogs.relation.IRelationEditor;
 import org.openstreetmap.josm.gui.layer.OsmDataLayer;
 import org.openstreetmap.josm.gui.layer.OsmDataLayer.CommandQueueListener;
@@ -47,12 +46,10 @@
         putValue(SMALL_ICON, ImageProvider.get("dialogs/refresh"));
         putValue(NAME, tr("Refresh"));
-        getEditor().getRootPane().getActionMap().put("refresh", this);
-        getEditor().getRootPane().getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(sc.getKeyStroke(), "refresh");
+        if (editor instanceof JComponent) {
+            ((JComponent) editor).getRootPane().getActionMap().put("refresh", this);
+            ((JComponent) editor).getRootPane().getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(sc.getKeyStroke(), "refresh");
+        }
         Main.main.undoRedo.addCommandQueueListener(this);
         updateEnabledState();
-    }
-
-    private GenericRelationEditor getEditor() {
-        return (GenericRelationEditor) editor;
     }
 
@@ -70,5 +67,5 @@
         if (isEditorDirty() && confirmDiscardDirtyData() != 0)
             return;
-        getEditor().reloadDataFromRelation();
+        editor.reloadDataFromRelation();
     }
 
