--- old/src/jdk.scripting.nashorn.shell/share/classes/jdk/nashorn/tools/jjs/EditObject.java 2015-08-25 16:46:37.606333100 +0530 +++ new/src/jdk.scripting.nashorn.shell/share/classes/jdk/nashorn/tools/jjs/EditObject.java 2015-08-25 16:46:37.206332500 +0530 @@ -86,7 +86,7 @@ @Override public void setMember(final String name, final Object value) { if (name.equals("editor")) { - this.editor = JSType.toString(value); + this.editor = value != null && value != UNDEFINED? JSType.toString(value) : ""; } } @@ -115,8 +115,10 @@ final SaveHandler saveHandler = new SaveHandler(initText); if (editor != null && !editor.isEmpty()) { ExternalEditor.edit(editor, errorHandler, initText, saveHandler, console); - } else { + } else if (! Main.HEADLESS) { EditPad.edit(errorHandler, initText, saveHandler); + } else { + errorHandler.accept(Main.getMessage("no.editor")); } return UNDEFINED; }