WebUI logoWebUI Overview

Overview

In BBj 25.10 and higher, the WebUI client allows BBj programs to run in a web browser. WebUI displays a desktop environment in the browser, allowing you to host your app without changing any of your core code. WebUI is the easiest way to publish your existing app to the web. WebUI apps generally have lower latency and better responsiveness than BUI apps.

If you need to maintain both desktop and web versions of your app, WebUI can maximize your development efficiency, because all updates are shared by both clients with no extra code changes.

WebUI renders your app exactly as it appears on the desktop, so the look, feel, and functionality reflect the desktop environment. However, it is important to note that the WebUI environment is hosted on the server, so WebUI apps reflect the server's desktop environment, not the client's. If look and feel differences cause any problems or unwanted behavior in your app, see the WebUI Overview for recommended solutions. One of the benefits that WebUI inherits from the desktop environment is theming support, which can be used to customize the look and feel of your app.

Because it renders the desktop environment, WebUI can also be used to deploy character-based console apps to the web, making it a low-effort choice to instantly modernize CUI apps. However, if deploying CUI apps is your only need, WebCUI can be the more cost-effective choice.

In addition to SAM, WebUI requires a WEBUI license feature. WEBUI feature line user counts can be lower than the BBj user count. Contact your BASIS sales representative for pricing and licensing options.

Installation

To install WebUI, check the WebUI box of the Feature Selection screen during BBj installation.

Configuration

To enable or disable WebUI deployment, check or uncheck the WebUI Enabled checkbox in EM: App Deployment > Global Settings in the WebUI Only section. On the same page, you can also modify the WebUI context mapping.

To configure WebUI settings for specific applications, go to EM: App Deployment > Applications and find the WebUI Only section at the bottom.

Headless Linux Server Configuration

Using WebUI applications on a headless Linux server requires some additional configuration. Use the steps below as a guide, modifying them if necessary to suit your specific operating system.

  1. Install xwindows support on the machine

    apt-get install libxext6 libxi6 libxtst6 libxrender1 libpangoft2-1.0-0

  2. Install xvfb if desired (would be required on AIX and on linux with glibc < 2.18)

    apt-get install xvfb (Package name may be different on different distributions)

  3. Install BBj

  4. Update BBj.properties if desired

    BBj.properties setting Description

    webui.display="\:99"

    By default, BBjServices exports "DISPLAY=:99". This property overrides the default setting.

    webui.enabled=true

    Set by the installer and EM.

    webui.isheadless=true

    Can be used to force BBjServices to run in headless mode. By default, BBjServices only runs in headless mode if DISPLAY is not set.

    webui.virtualdisplay.prog=<virtual display program>

    By default BBjServices uses ${BBjHome}/webui/xheadless/xheadless as the virtual display program on Linux, and /usr/bin/xvfb-run as the program on AIX. This property allows you to specify the program to use. This can be xheadless, xvfb or another program that creates a virtual display to use.

    You can use this property to specify command line arguments in addition to the program name.

    By default, xheadless/xvfb is used if all of the following is true

    • WebUI is installed

    • webui.enabled is true

    • the DISPLAY environment variable is not set

    • the virtual display program to run exists.

    Additionally, xheadless/xvfb is used if the webui.isheadless property is set to true.

See Also

BASIS Web Clients

EM: App Deployment > Global Settings

EM: App Deployment > Applications

Dynamic Web Client (DWC) Overview

Browser User Interface (BUI) Overview

WebCUI Overview