Perspective Workstation BrowserUtils Failed to start Browser Engine with options

I am struggling to get the Perspective Workstation to open the application. This is running on RHEL 8.5, x86 architecture.

thoughts?



ERROR [BrowserUtils                  ] [2022/01/28 17:53:04]: Failed to start Browser Engine with options
 com.teamdev.jxbrowser.engine.EngineOptions:
  autoplayEnabled: true
  chromiumDir: /home/anonymous/.ignition/cache/resources/jxbrowser/7.12.1
  chromiumSwitches: []
  diskCacheSize: <unknown>
  fileAccessFromFilesAllowed: false
  isGpuDisabled: false
  isIncognitoEnabled:false
  language:en-us
  passwordStore: <unknown>
  remoteDebugginPort: 9224
  renderingMode: HARDWARE_ACCELERATED
  isSandboxDisabled: false
  secureOriginWhitelist: []
  isTouchMenuEnabled: true
  userAgent: <unknown user agent value>
  userDataDir:/home/anonymous/.ignition/clientlauncher-data/workstationUserData/7
  webSecurityDisabled: false
.
com.teamdev.jxbrowser.engine.ChromiumProcessStartupFailureException: Process exit code: 127
        at com.teamdev.jxbrowser.engine.internal.EngineImpl.throwExceptionAndCleanup(EngineImpl.java:478)
        at com.teamdev.jxbrowser.engine.internal.EngineImpl.newInstance(EngineImpl.java:281)
        at com.teamdev.jxbrowser.engine.Engine.newInstance(Engine.java:106)
        at com.inductiveautomation.ignition.launcher.workstation.utils.BrowserUtils.lambda$getOrCreateEngine$34(BrowserUtils.java:575)
        at com.inductiveautomation.ignition.launcher.workstation.utils.BrowserUtils.runResourceLockedAction(BrowserUtils.java:996)
        at com.inductiveautomation.ignition.launcher.workstation.utils.BrowserUtils.getOrCreateEngine(BrowserUtils.java:575)
        at com.inductiveautomation.ignition.launcher.workstation.utils.BrowserUtils.getOrCreateEngine(BrowserUtils.java:614)
        at com.inductiveautomation.ignition.launcher.workstation.utils.BrowserUtils.lambda$openAsyncImpl$13(BrowserUtils.java:306)
        at com.inductiveautomation.ignition.launcher.common.service.SimpleService$1.call(SimpleService.java:23)
        at javafx.concurrent.Task$TaskCallable.call(Task.java:1425)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at javafx.concurrent.Service.lambda$executeTask$6(Service.java:725)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at javafx.concurrent.Service.lambda$executeTask$7(Service.java:724)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)

Do you mean x86-64?

Can you post the full logs? Other times this has happened it’s been a missing system library or something: Perspective missing in project browser in linux - #2 by Kevin.Collins

I will post them when I get back to a pc. I saw that forum post and looked through the log file but I only saw that one entry over and over again. Quite possible I missed something tho.

Correct

Also, you could emit jxbrowser logs and take a peek. if you modify the app/perspectiveworkstation.sh script and add this: -Djxbrowser.logging.level=WARNING -Djxbrowser.logging.file=/home/anonymous/Desktop/jxbrowser.log prior to the -jar argument you should see a log file on your desktop which might give some insight. If there isn’t anything useful you could increase the verbosity with INFO, DEBUG, or ALL.

3 Likes

I didnt get anything with Warning, but when I set to trace I caught this error.

16:38:30.389 DEBUG [Chromium] /home/anonymous/.ignition/cache/resources/jxbrowser/7.12.1/chromium: error while loading shared libraries: libXss.so.1: cannot open shared object file: No such file or directory

1 Like

Can you install that library or a package the depends on it (libXScrnSvr for example) and see if it fixes anything?

Got it installed. That error is gone, and it looks like the jxbrowser is hitting the url based on the new log. Unfortunately, I can’t see what the screen is doing until tomorrow morning. Fingers crossed. Will update the thread tomorrow.

Thanks for your help!

The solution to my particular problem was a missing library, libXss.so.1, and installing libXScrnSvr resolved the issue. Thanks @Kevin.Herron

@jcoffman had a great idea for the jxbrowser log which is how we found the missing library.

Brilliant, found the missing library with this...

Resolved the issue and let jxbrowser open.

2 Likes

I do have two new “issues” to sort through now that its open, but I’ll research a bit first.

Linux appears to be popping up a create password prompt "An application wants to create a new keyring called “Default keyring”…not sure where that’s coming from yet.

And we want this kiosk mode to be locked down, with users unable to minimize the project to reach perspective workstations settings/add apps page.

That’s probably GnuPG. If you want Linux to present a strict kiosk, don’t launch a desktop environment at all. Instead, define a custom Xsession in your login greeter (sddm in everything but Gnome), with autologin and relogin. The custom Xsession would launch Perspective Workstation directly instead of launching a desktop shell.

Thanks @pturmel. Any chance you also know how to disable the ability to exit the project back to the perspective workstation launcher?

An official “kiosk mode” for Perspective Workstation is a feature we’ve had on the backlog for a while. You may be trying to fight a battle you can’t win.

What about just putting Chrome into kiosk mode instead? What do you need Workstation for?

Thats a good question. We have been wondering if we should just launch it in a browser instead. We are already handling the kiosk mode with the OS itself.

Are there any benefits to perspective workstation over a browser?

Have you played with any of the launch options workstation has? I know “Kiosk Mode” is still a feature in the pipeline, but there is a “Kiosk” launch mode right now: Perspective Workstation - Ignition User Manual 8.1 - Ignition Documentation

In theory Workstation has or will have additional integrations with your operating system that you couldn’t get when running in a browser. There aren’t very many of those implemented at the moment.

Yes, unfortunately Kiosk mode in PW doesnt eliminate the user's ability to minimize the project back to PW's app launcher.

Playing around with launching in a browser.