studio
2022.4
false
- Release Notes
- Getting Started
- Setup and Configuration
- Automation Projects
- Dependencies
- Types of Workflows
- File Comparison
- Automation Best Practices
- Source Control Integration
- Debugging
- The Diagnostic Tool
- Workflow Analyzer
- About Workflow Analyzer
- ST-NMG-001 - Variables Naming Convention
- ST-NMG-002 - Arguments Naming Convention
- ST-NMG-004 - Display Name Duplication
- ST-NMG-005 - Variable Overrides Variable
- ST-NMG-006 - Variable Overrides Argument
- ST-NMG-008 - Variable Length Exceeded
- ST-NMG-009 - Prefix Datatable Variables
- ST-NMG-011 - Prefix Datatable Arguments
- ST-NMG-012 - Argument Default Values
- ST-NMG-016 - Argument Length Exceeded
- ST-DBP-002 - High Arguments Count
- ST-DBP-003 - Empty Catch Block
- ST-DBP-007 - Multiple Flowchart Layers
- ST-DBP-020 - Undefined Output Properties
- ST-DBP-023 - Empty Workflow
- ST-DBP-024 - Persistence Activity Check
- ST-DBP-025 - Variables Serialization Prerequisite
- ST-DBP-026 - Delay Activity Usage
- ST-DBP-027 - Persistence Best Practice
- ST-DBP-028 - Arguments Serialization Prerequisite
- ST-USG-005 - Hardcoded Activity Arguments
- ST-USG-009 - Unused Variables
- ST-USG-010 - Unused Dependencies
- ST-USG-014 - Package Restrictions
- ST-USG-020 - Minimum Log Messages
- ST-USG-024 - Unused Saved for Later
- ST-USG-025 - Saved Value Misuse
- ST-USG-026 - Activity Restrictions
- ST-USG-027 - Required Packages
- ST-USG-028 - Restrict Invoke File Templates
- Variables
- Arguments
- Imported Namespaces
- Recording
- UI Elements
- Control Flow
- Selectors
- Object Repository
- Data Scraping
- Image and Text Automation
- Automating Citrix Technologies
- RDP Automation
- Salesforce Automation
- SAP Automation
- VMware Horizon Automation
- Logging
- The ScreenScrapeJavaSupport Tool
- The WebDriver Protocol
- Test Suite - Studio
- Extensions
- Troubleshooting
- About troubleshooting
- Microsoft App-V support and limitations
- Internet Explorer X64 troubleshooting
- Microsoft Office issues
- Identifying UI elements in PDF with Accessibility options
- Repairing Active Accessibility support
- JxBrowser applications troubleshooting
- User Events Monitoring
- Citrix Troubleshooting
- Automating Applications Running Under a Different Windows User
Java extension troubleshooting
Studio User Guide
Last updated Nov 4, 2024
Java extension troubleshooting
This page presents the most frequent reasons for which the Extension for Java might not work properly, and how to solve these issues.
Check if UiPath Studio can retrieve valid Java selectors
To check if the extension is not working properly, open UIExplorer and try to select controls inside a Java app. If the entire window is selected, it means that the extension is not working properly.
If you can select controls, but their selectors look like
<wnd app=”...” /><ctrl role=”client” />
instead of <wnd app=”...” /><java role=”...” />
, then the extension is not working properly.
Please note that the UiPath Extension for Java is compatible only with AWT apps (e.g. Java Swing, Oracle Forms, Fujitsu JBK),
while SWT apps are automated with Active Accessibility. To detect the type of your Java application, check the
cls
attribute (window class name) in UiExplorer. The class name should be similar to SunAwtFrame
or javax.swing
.
Check if the extension files are loaded by the Java application
- Open Process Explorer.
- In the View menu, select Lower Pane View > DLLS, or press Ctrl+D. A panel is displayed in the lower part of the window.
- Select the process of your Java app and check if
UiPathJavaBridgeV8.dll
orUiPathJavaBridgeV8_x64.dll
are loaded by your Java app. - Check from what path the
java.dll
module is loaded. A regular JRE has a path likeC:\Program Files (x86)\Java\jre1.8.0_xx\bin\java.dll
. A custom JRE is usually located in the application folder.
Check if the extension files have been added to the JRE
- Using a text editor, such as Notepad++, open the
accessibility.properties
file, which is located in theC:\Program Files (x86)\Java\jre1.8.0_xx\lib
folder. If the extension is properly installed, the file should containassistive_technologies=UiPath.UiPathBridge
. - In the
C:\Program Files (x86)\Java\jre1.8.0_xx\lib\ext
folder, you should find theUiPathBridge.jar
file. -
In the
C:\Program Files (x86)\Java\jre1.8.0_xx\bin
folder, you should findUiPathJavaBridgeV8.dll
orUiPathJavaBridgeV8_x64.dll
.Note: If any of the previous requirements are not met, you can try to reinstall the extension as explained above, or fix them manually.
Do not call
DestroyJavaVM()
if your target application executes JNI code, as user threads run within the UiPath Java Extension DLL.
Important: This applies to UI Automation packages older than 22.2.
Prior to Java 9, the Java Runtime Environment (JRE) included the
jdk.attach
module, which interacted with the UiPath Extension Java to generate appropriate selectors. Java 9+ only includes this module
in the Java Development Kit (JDK).
Selectors are generated for any Java 9+ application opened with Java JDK. If, however, you need to create automation projects
which interact with applications opened with Java JRE, you need to manually include the
jdk.attach
module in the target JRE.
Note: For Java 9+, the UiPath Extension for Java works on Windows Enterprise and non-Enterprise editions with applications opened
with Java JDK. For applications opened with Java JRE, the UiPath Extension for Java only works on non-Enterprise Windows editions.
Having Java Access Bridge enabled creates the
accessibility.properties
file in the current user's home directory which overwrites the accessibility bridge loaded by the default bridge. The solution
is to disable the Java Access Bridge and remove the accessibility.properties
file, as follows:
- Go to Control Panel > Ease of Access Center > Make the computer easier to see.
- Scroll to the bottom of the page to the Other programs installed section.
- Make sure the Enable Java Access Bridge box is not selected.
- If the Enable Java Access Bridge box was checked go to
C:\Users\current_user
. - Delete the
.accessibility.properties
file.Note: If the Enable Java Access Bridge option is not visible, you need to reinstall or update Java.