Index: trunk/src/org/openstreetmap/josm/gui/progress/PleaseWaitProgressMonitor.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/progress/PleaseWaitProgressMonitor.java	(revision 8689)
+++ trunk/src/org/openstreetmap/josm/gui/progress/PleaseWaitProgressMonitor.java	(revision 8692)
@@ -3,4 +3,5 @@
 
 import java.awt.Component;
+import java.awt.GraphicsEnvironment;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
@@ -98,8 +99,14 @@
     }
 
+    /**
+     * Constructs a new {@code PleaseWaitProgressMonitor}.
+     */
     public PleaseWaitProgressMonitor() {
         this("");
     }
 
+    /**
+     * Constructs a new {@code PleaseWaitProgressMonitor}.
+     */
     public PleaseWaitProgressMonitor(String windowTitle) {
         this(Main.parent);
@@ -107,10 +114,20 @@
     }
 
+    /**
+     * Constructs a new {@code PleaseWaitProgressMonitor}.
+     */
     public PleaseWaitProgressMonitor(Component dialogParent) {
         super(new CancelHandler());
-        this.dialogParent = JOptionPane.getFrameForComponent(dialogParent);
+        if (GraphicsEnvironment.isHeadless()) {
+            this.dialogParent = dialogParent;
+        } else {
+            this.dialogParent = JOptionPane.getFrameForComponent(dialogParent);
+        }
         this.cancelable = true;
     }
 
+    /**
+     * Constructs a new {@code PleaseWaitProgressMonitor}.
+     */
     public PleaseWaitProgressMonitor(Component dialogParent, String windowTitle) {
         this(JOptionPane.getFrameForComponent(dialogParent));
