/*
 * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 only, as
 * published by the Free Software Foundation.  Oracle designates this
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle in the LICENSE file that accompanied this code.
 *
 * This code is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
 * 2 along with this work; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 * or visit www.oracle.com if you need additional information or have any
 * questions.
 */

package java.awt;

Thrown when code that is dependent on a keyboard, display, or mouse is called in an environment that does not support a keyboard, display, or mouse. Any code that depends on any of those devices should firstly ensure their availability using the GraphicsEnvironment.isHeadless() method and throw HeadlessException if the latter returns true.
Author: Michael Martak
See Also:
Since:1.4
/** * Thrown when code that is dependent on a keyboard, display, or mouse * is called in an environment that does not support a keyboard, display, * or mouse. Any code that depends on any of those devices should firstly * ensure their availability using the {@code GraphicsEnvironment.isHeadless()} * method and throw {@code HeadlessException} if the latter returns * {@code true}. * * @since 1.4 * @author Michael Martak * @see GraphicsEnvironment#isHeadless */
public class HeadlessException extends UnsupportedOperationException { /* * JDK 1.4 serialVersionUID */ private static final long serialVersionUID = 167183644944358563L;
Constructs new HeadlessException with empty message. For such HeadlessException the default headless error message may be auto-generated for some platforms. The text of the default headless message may depend on whether the GraphicsEnvironment is in fact headless. That is, the default headless message is both system and environmentally dependent.
/** * Constructs new {@code HeadlessException} with empty message. * For such {@code HeadlessException} the default headless error message * may be auto-generated for some platforms. * The text of the default headless message may depend on * whether the GraphicsEnvironment is in fact headless. * That is, the default headless message is both system and environmentally * dependent. */
public HeadlessException() {}
Create a new instance with the specified detailed error message. For some platforms the default headless error message may be added at the end of the specified message. The text of the default headless message may depend on whether the GraphicsEnvironment is in fact headless. That is, the default headless message is both system and environmentally dependent.
Params:
  • msg – the error message
/** * Create a new instance with the specified detailed error message. * For some platforms the default headless error message may be * added at the end of the specified message. * The text of the default headless message may depend on * whether the GraphicsEnvironment is in fact headless. * That is, the default headless message is both system and environmentally * dependent. * * @param msg the error message */
public HeadlessException(String msg) { super(msg); }
Returns the detail message string of this HeadlessException. Depending on the platform the message specified in the constructor may be followed by the default headless error message. The text of the default headless message may depend on whether the GraphicsEnvironment is in fact headless. That is, the default headless message is both system and environmentally dependent.
Returns: the detail message string of this HeadlessException instance (which may be null).
/** * Returns the detail message string of this {@code HeadlessException}. * Depending on the platform the message specified in the constructor may * be followed by the default headless error message. * The text of the default headless message may depend on * whether the GraphicsEnvironment is in fact headless. * That is, the default headless message is both system and environmentally * dependent. * * @return the detail message string of this {@code HeadlessException} * instance (which may be {@code null}). */
public String getMessage() { String superMessage = super.getMessage(); String headlessMessage = GraphicsEnvironment.getHeadlessMessage(); if (superMessage == null) { return headlessMessage; } else if (headlessMessage == null) { return superMessage; } else { return superMessage + headlessMessage; } } }