< prev index next >

src/java.desktop/share/classes/java/awt/Toolkit.java

Print this page

        

@@ -1,7 +1,7 @@
 /*
- * Copyright (c) 1995, 2017, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1995, 2019, 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

@@ -501,15 +501,17 @@
      * assistive technology providers to load.  The order in which providers are
      * loaded is determined by the order in which the ServiceLoader discovers
      * implementations of the AccessibilityProvider interface, not by the order
      * of provider names in the property list.  When a provider is found its
      * accessibility implementation will be started by calling the provider's
-     * activate method.  All errors are handled via an AWTError exception.
+     * activate method.  If the list of assistive technology providers is the
+     * empty string or contains only white space characters or null then the method
+     * returns immediately. All other errors are handled via an AWTError exception.
      */
     private static void loadAssistiveTechnologies() {
         // Load any assistive technologies
-        if (atNames != null) {
+        if (atNames != null && !atNames.strip().isEmpty()) {
             ClassLoader cl = ClassLoader.getSystemClassLoader();
             Set<String> names = Arrays.stream(atNames.split(","))
                                       .map(String::trim)
                                       .collect(Collectors.toSet());
             final Map<String, AccessibilityProvider> providers = new HashMap<>();

@@ -549,11 +551,15 @@
      * <p>
      * An example of setting this property is to invoke Java with
      * {@code -Djavax.accessibility.assistive_technologies=MyServiceProvider}.
      * In addition to MyServiceProvider other service providers can be specified
      * using a comma separated list.  Service providers are loaded after the AWT
-     * toolkit is created. All errors are handled via an AWTError exception.
+     * toolkit is created.
+     * If the list of assistive technology providers as provided through system property
+     * "{@systemProperty javax.accessibility.assistive_technologies}" is the empty string or
+     * contains only white space characters then the method returns immediately.
+     * All other errors are handled via an AWTError exception.
      * <p>
      * The names specified in the assistive_technologies property are used to query
      * each service provider implementation.  If the requested name matches the
      * {@linkplain AccessibilityProvider#getName name} of the service provider, the
      * {@link AccessibilityProvider#activate} method will be invoked to activate the
< prev index next >