Web presentation engine

Use a web presentation engine to make a web user interface available to web clients in supported browsers and to workstation clients that run as operating system applications. You can also enable automation IDs for testing.

Overview

A web presentation engine hosts the web user interface of an HMI application on the runtime device. It serves clients that connect from supported web browsers and workstation clients that run as operating system applications. Use it on target devices with an operator panel and on devices without a dedicated administration interface. A project can contain only one web presentation engine.
The web presentation engine reserves separate connection capacity for web clients and workstation clients.
Maximum number of web connections
limits web client connections, and
Maximum number of workstation connections
limits workstation client connections.
TIP: If no web connection slots are available, a web client can use an available workstation connection slot.
For more information about web presentation engine configuration, see Configure a web presentation engine.

Web clients

Web clients use supported web browsers to open
FactoryTalk Optix Application
sessions through the web presentation engine.

Workstation clients

Workstation clients open web-based
FactoryTalk Optix Application
sessions as operating system applications through the web presentation engine. Use workstation clients to integrate seamlessly with other operating system applications.
Workstation clients require an active
FactoryTalk Optix Runtime
. To install, update, and uninstall
FactoryTalk Optix Applications
running as workstation clients, refer to the web browser documentation.
TIP: If a workstation client restarts while the web presentation engine uses an untrusted self-signed certificate, you must trust the application certificate. After you approve the certificate, the application opens in a standard browser page. To open the workstation client, launch the application again from the browser.
If the web presentation engine listens on
localhost
, workstation clients can use HTTP or self-signed HTTPS certificates. Use this setting only for debugging or development, not in production.
For production use on a non-localhost address, set the web presentation engine protocol to HTTPS and use generated, signed certificates. Self-signed certificates are not supported.

Security and session management

When a web client or workstation client connects to the web server, the web presentation engine creates an interactive session. The session belongs to the authenticated user. The same authenticated user can create additional interactive sessions by accessing the project from multiple devices. Each session creates a start window. For more information, see UI session.
TIP: For security reasons, to view websites with self-signed SSL certificates inside a WebBrowser object with the web presentation engine, open the website in another tab of the same browser. Approve the certificate on that tab. Then go to the WebUI tab and reload the page to display the self-signed SSL website. Only websites with a content security policy that allows embedding can open inside a WebBrowser on a WebUI session. See Certificate errors.

Client IP address

Go to the
Aliases
{Session}
Session
UI Session
IP Address
variable to get the client IP address. Create dynamic links to use the client IP address in application logic. For example, display different graphic objects to clients that connect from specific IP addresses.
For more information, see Dynamic links and Aliases.

File loading restrictions

Web presentation engines load files only from the project directory (
%PROJECTDIR%
). This restriction applies to any object in the project that loads files, including image, web browser, and PDF viewer objects.

Runtime window display

To display a different window at runtime, add
/windows/
window_object_name
to the address. For example,
localhost:8843/windows/Window1
.
For more information about adding windows to your project, see Configure a window.

Automation IDs for testing

To enable Automation IDs for testing, enable
Advanced mode
in the
FactoryTalk Optix Studio
settings. In the web presentation engine, select
Enable automation IDs
. When enabled, the web presentation engine adds
data-automationid="<BrowsePath>"
to the
<div>
element of each UI part. The attribute value is the browse path of the part, which represents its position in the UI hierarchy. For example,
data-automationid="NewHMIProject136/UI/MainWindow/ScrollView1/Rectangle1"
.
Use
data-automationid
as the primary selector in end-to-end or integration tests. It is more stable than text, CSS classes, or DOM structures that change due to refactoring.
TIP:
  • Do not use
    data-automationid
    for CSS or application logic.
  • Do not enable the feature in production. Use it only for testing sessions.
Provide Feedback
Have questions or feedback about this documentation? Please submit your feedback here.
Normal