SW support Mosaic 30.08.2026 20:57 30.08.2026 20:57

This article provides a solution that addresses changes in web browsers that will affect the rendering of web pages created with the Webmaker tool in existing Tecomat PLCs.

The current web pages use XSLT transformation: after loading the XML data, the browser generates the resulting HTML page. However, browser vendors are gradually phasing out this technology. Google has already announced that it will remove support for XSLT in the stable version of Chrome 158, scheduled for release on November 17, 2026. Other browser vendors may head in a similar direction.

Once this feature is removed, the browser will not display the existing web pages.

Solutions

Solution on the PLC Side

To move to a presentation that is independent of XSLT transformations, we have prepared a solution on the PLC side that consists of two parts::

  1. New firmware for Foxtrot CP-1xxx and TC700 (version 11.4) and for Foxtrot CP-2xxx and TC800 (version 8.0 and newer)
  2. A new version of the Mosaic 2026.1 development environment, which generates web pages independent of XSLT transformations.

For a successful migration, you must update the PLC firmware and compile the project using the new version of the Mosaic environment.

The combination of new firmware and an old project compilation, or conversely, a project compiled using a new version of the development environment and uploaded to a PLC running old firmware, works, but will result in the web pages remaining in their original form, which requires an XSLT transformation.

Solution on the TecoRoute Side

In early September, new server-side software will be deployed on the TecoRoute server. This software will handle XSL transformation on the server side, ensuring that the web browser receives a fully rendered HTML page. This will maintain the functionality of the web interface when accessed via TecoRoute, even on systems where the PLC firmware has not been updated and the project has not been recompiled using the new Mosaic environment.

Other Options

An extension calledXSLT Polyfillis being developed for Google Chrome and compatible browsers; it performs XSLT transformations on the browser side. However, this solution has the following limitations:

  • It is not a universal solution for all browsers.
  • It does not work for projects that use non-standard characters in STRING-type variables unless they are encoded in UTF-8.

Changes in functionality without XSLT

The following points summarize the technical changes compared to the original model.

Firmware Changes

  • The PLC checks for the presence of a tag in INDEX.XML; this indicates that a version of the web page without XSLT is available.
  • System pages such as LOGIN and LOGOUT are generated in HTML format without requiring XSLT.
  • By default, an unauthenticated user is redirected to /SYSWWW/LOGIN.HTM.
  • After successful login, the address in the format /INDEX.HTM?p= is used in non-XSLT mode
  • The INDEX.HTM page serves as the main container for the whole page
  • The actual rendering is performed by the ENGINE.JS script based on XML data and page descriptions in the DESC/ folder
  • When navigating between pages, a new HTML skeleton is usually not loaded; only the rendered content changes
  • If the link points to a directory, the firmware checks whether the directory contains the INDEX.XML and INDEX.HTM files and, based on that, either redirects to those files or displays the directory's contents via a URL in the format /INDEX.HTM?p=
  • If a link to a folder ends with two forward slashes (/), or if the request header contains X-Tecomat: data, the content is returned in XML format, which requires an XSLT transformation
  • You can log out using either LOGOUT.XML or LOGOUT.HTM; this results in a redirect to the HTML logout page

Compatibility with Older Browsers

Both LOGIN.HTM and INDEX.HTM use JavaScript to detect support for more modern browser mechanisms (ENGINE.JS uses AbortController, for example). If the browser does not support them, the page falls back to the original XML version with XSLT, which older browsers do support.

Changes on the TecoRoute side

  • An unauthenticated user is redirected to TR_LOGIN.HTM instead of TR_LOGIN.XML
  • The login sequence remains functionally the same, but is handled by a script on the HTML page
  • GET requests for XML files with an XSL template are transformed into HTML on the TecoRoute side after login
  • The exception is requests with a header containing X-Tecomat:data, which are used to retrieve XML data without transformation
  • After logging out, the user is redirected to TR_LOGOUT.HTM
  • TR_AUTOLOGIN.HTM is used for automatic login; old links to XML files remain valid

Changes on the Webmaker side

In addition to the original files, files for the non-XSLT mode are also generated, namely:

  • INDEX.HTM
  • ENGINE.JS
  • LOGIN.HTM
  • LOGIN.JS
  • LOGOUT.HTM
  • the DESC directory containing page layout descriptions

You can disable the generation of the original version that requires XSLT in the Webmaker tool. This will reduce the overall size of the web pages, but a web page created this way will not work with older PLC firmware or in older browsers that rely on the original XML/XSLT version for rendering.