Chromium Binary Configuration For POS
Capture JCEF Version
The Core - Chromium Support project or the Parent POM project related to the Platform Version that you run your POS defines the JCEF version for your POS Application.
<properties>
<svn.projectRoot>false</svn.projectRoot>
<jcef.version>[JCEF version]</jcef.version>
</properties>
If the JCEF version of the platform is 1.0.316, the jcef.version property will appear as below.
Download Appropriate Chromium Binary
The Chromium binary can be downloaded as follows.
-
If you are a Windows user, use the following link
https://dev.enactor.co.uk/artifactory/all-repos/com/enactor/chromium/windows-binaries/[JCEF version]/Replace [JCEF version] with the version you identified in Capture JCEF Version
When you navigate to the appropriate link, you will see a .zip file. Click on the apprpriate zip file to download the Chromium binary.
-
If you are a Linux user, use the following link
https://dev.enactor.co.uk/artifactory/all-repos/com/enactor/chromium/linux-binaries/[JCEF version]/Replace [JCEF version] with the version you identified in Capture JCEF Version
When you navigate to the appropriate link, you will see a .zip file. Click on the apprpriate zip file to download the Chromium binary.
-
If you are a Mac user, use the following link
https://dev.enactor.co.uk/artifactory/all-repos/com/enactor/chromium/mac-binaries/[JCEF version]/Replace [JCEF version] with the version you identified in Capture JCEF Version
When you navigate to the appropriate link, you will see two files,
amd64.zipandarm64.zip. Click on the file that matches your system architecture to download the Chromium binary.- Mac (Intel) -> download amd64.zip
- Mac (Apple Silicon) -> download arm64.zip
Chromium Folder
-
Create a folder named chromium inside your EnactorHome directory.
- Eg - /WorkspaceSetup/EnactorHome/chromium
-
Extract the downloaded Chromium binary .zip file.
-
Copy the extracted contents into the chromium folder you just created. (It's important to have the exact name chromium for the directory where the binary files located.)
- If you a Mac User, when you download the binary, OS will add a quarantine flag . You need to remove it.
1. Check if the quarantine flag exists:
Run the following command (replace the path with your Chromium folder path)
find /path/to/chromium -exec xattr -l {} \; 2>/dev/null | grep quarantine
Eg - find /Users/enactordev/Desktop/chrome -exec xattr -l {} \; 2>/dev/null | grep quarantine

2. Remove the quarantine flag:
Run the following command in the directory where the Chromium binaries are located
sudo xattr -r -d com.apple.quarantine /path/to/chromium
Eg - sudo xattr -r -d com.apple.quarantine /Users/enactordev/Desktop/chrome

3. verify flag is removed:
Run the following command again to confirm that the quarantine flag has been removed.
find /path/to/chromium -exec xattr -l {} \; 2>/dev/null | grep quarantine

Run Configuration
- In your React POS Run Configuration, make sure the following VM Argument is configured.
-Djava.library.path="${enactor_root}${dir_sep}licence;${enactor_root}${dir_sep}chromium

Then click Apply Button.
If you are a Linux User, You need to set the LD_LIBRARY_PATH environment variable to $JAVA_HOME/lib/amd64/. This can be done at the OS level or in the eclipse run configuration setup.

Enactor.xml
- Add following property in
enactor.xmlof react fixed POS config directory.
<core:corePropertyname="Browser.Type" value="chromium"/>
If you are a Linux/Mac User, add the following property in enactor.xml of the React fixed POS config directory.
<core:coreProperty name="Chromium.CreateImmediately" value="false"/>