With the release of the Java Runtime Environment (JRE) version 7 update 6 (7u6), Oracle has begun distributing the Java Access Bridge as part of the JRE. The Java Access Bridge (JAB) exposes accessibility information about Java components to screen readers and other assistive technologies running on the Windows platform and must be installed in order to use Java applications such as AMP Desktop with screen readers such as JAWS and NVDA. The Access Bridge is not required to use Java applications with assistive technologies on the Mac and Linux platforms. As noted in a previous blog entry, the first version of the Access Bridge to support 64-bit Windows, 2.02, did not come with an automatic installer, requiring the user to execute a complex sequence of installation steps. Beginning with the JRE 7u6, the Access Bridge is installed as part of the JRE installation, thereby eliminating the cumbersome manual installation process.
The Java Runtime Environment or Java Development Kit version 7 update 6 or later should be installed in order to obtain the Access Bridge. At the time of this writing, the current version of the Access Bridge is 2.0.3. The latest Java Runtime Environment can be downloaded from the Oracle Java SE Downloads page. If you are running a 32-bit version of Windows, download one of the Windows x86 installers. If you are running a 64-bit version of Windows, install the Windows x64 version of the JRE. Oracle’s Java Accessibility Guide cautions against using a 64-bit version of JAWS with a 32-bit JRE. Testing of the AMP Desktop Java application with only 32-bit Java enabled using the 64-bit version of JAWS 13.0.1006 did not uncover any variables, suggesting that the problem may have been corrected and that it is now safe to use both x86 and x64 runtimes with this version of JAWS.
To work with the 64-bit components of the Access Bridge, JAWS version 12.0.1158, NVDA version 2011.3 or later versions must be used. Earlier versions of these products may be used with 32-bit versions of Java.
Enabling the Java Access Bridge
When you install the Java Runtime Environment, the Access Bridge is not enabled by default. On Windows Vista and later, you can enable the Access Bridge using the “Ease of Access Center” in the Control Panel. You can also enable the Access Bridge from the command line in all versions of Windows, and you can enable it on a system-wide basis by uncommenting lines in the
Accessibility.properties file of the JRE. The Java Accessibility Guide contains additional information about the Java Access Bridge, including directions for enabling and disabling the Access Bridge, testing that it is working and troubleshooting guidance.
Enabling the Access Bridge from the Ease of Access Center
On Windows Vista and later you can enable the Java Access Bridge using the “Ease of Access Center” found in the Windows Control Panel. This will enable the Bridge for all versions of JRE 7u6 or later that are installed. For versions earlier than 7u6, Java Access Bridge version 2.0.2 will need to be installed manually (see Testing the Java Access Bridge). To enable the Access Bridge:
- Activate the Ease of Access Center by pressing Windows+U, or navigate to Start Menu – Control Panel -> Ease of Access -> Ease of Access Center.
- Navigate to and activate the “Use a computer without a display” link.
- Navigate to and check the “Enable Java Access Bridge” check box in the “Other programs installed” section of the dialog box.
- Navigate to and activate the “OK” button to dismiss the dialog.
The Access Bridge will be enabled for the current user. The above steps must be repeated while logged into the account of each user for which it should be enabled. To enable the Access Bridge for all accounts on the system, see Enabling the Access Bridge for All accounts on the System. It cannot be disabled using this process. To disable the Access Bridge, see Disabling the Access Bridge.
Enabling the Access Bridge from the Command Line
The Java Access Bridge can be enabled from the command line using the
jabswitch utility. To enable the JAB using the command line, navigate to the “bin” folder of the JRE for which it should be enabled. For most users, the path will be something similar to
C:\Program Files\Java\jre7\bin for the 64-bit JRE. If the Java Development Kit (JDK) has been installed instead of the Runtime, include the JDK installation folder in the path. When the correct location has been reached, type the following from a command prompt:
and press enter. This will enable the Access Bridge for the Java Virtual Machine (JVM) within the path. If multiple JVMs are installed, this command will need to be executed for each instance that the Access Bridge should be enabled. For example, if both 32- and 64-bit JREs are installed, then the Bridge will need to be enabled for both runtimes. To enable the 32-bit JRE, navigate to a path similar to
C:\Program Files (x86)\Java\jre7\bin and execute the above command from a command prompt.
Note that this only affects the Access Bridge for the current user. To enable it for other accounts, the above command must be executed while logged into each account. To enable the Access Bridge for all accounts on the system, see Enabling the Access bridge for All accounts on the System.
Enabling the Access Bridge for All Accounts on the System
If password or other restrictions prevent the Access Bridge from being enabled for all users using the above techniques, it can be enabled so that it will work for all accounts on the system. To enable the Java Access Bridge system-wide, navigate to the
accessibility.properties file located in the
lib folder of the JRE. For most users, the path will be something similar to
C:\Program Files\Java\jre7\lib for the 64-bit JRE. Next, edit the following two lines in the
By removing the
# character from the beginning of each line, you are effectively “uncommenting” them so that they will not be ignored. Note that the
Accessibility.properties file will need to be individually modified for each JVM in which the Access Bridge should be enabled. For example, if both 32- and 64-bit Java is installed, both files will need to be modified for each JVM separately. Note that enabling the Java Access Bridge on a system-wide basis appears to prevent it from being disabled individually until the commented state of the above two lines are restored.
Disabling the Access Bridge
Unchecking the “Enable Java Access Bridge” check box within the “Ease of Access” center will not effectively disable the Access Bridge. The only way to disable it is by executing the
jabswitch utility from the command prompt. To disable the access bridge, navigate to the
bin folder of the JRE which should be disabled. For most users, the path will be similar to
C:\Program Files\Java\jre7\bin. from a command prompt, type:
and press enter. Note that this will only disable the JAB for the specified Java Virtual Machine for the current user, and it will have no effect if it has been enabled system-wide as described in the Enabling the Access Bridge for All accounts on the System section. The utility will need to be executed for each JVM which should be disabled while logged into the account of each user for which the Bridge should be disabled. If both 32- and 64-bit runtimes are installed on a 64-bit system, the 32-bit Access Bridge will need to be disabled separately. For most users this can be accomplished by navigating to
C:\Program Files (x86)\Java\jre7\bin and executing the
jabswitch -disable command from a command prompt.
Testing the Java Access Bridge
The fastest method for testing the functionality of the Access Bridge is to use it in conjunction with a Java application for which the Java Accessibility API has been implemented such as AMP Desktop along with an Access Bridge-supported assistive technology such as JAWS, ZoomText or NVDA. The Java Access Bridge previously came bundled with diagnostic tools called Java Ferret and Java Monkey, which display a modal window exposing accessibility properties and events for Java components and allow for traversal of the accessibility tree. Beginning with Access Bridge 2.0.3 these tools are not bundled with the Java Runtime Environment. As they can be very useful for testing the accessibility of Java applications, they should be obtained by anyone who performs Java accessibility testing. Java Ferret and Java Monkey are included with versions 2.02 and earlier of the Access Bridge and can be obtained by downloading the Java Access Bridge version 2.0.2. The Access Bridge 2.0.2 should also be downloaded by users who need to make versions of Java earlier than 7u6 accessible.