PureWeb 4.1 Release Notes

These Release Notes apply to all 4.1.x releases of the PureWeb SDK.

Release History

New in PureWeb 4.1

  • Services can be deployed as managed or unmanaged. In a managed service, the PureWeb server controls the application/process life cycle, starting and stopping the service application when clients first connect. In an unmanaged service, these tasks are handled outside of the server. Unmanaged services make it possible to deploy the PureWeb server and the service application on different system nodes.
  • Added support for Red Hat Enterprise Linux (RHEL). The RHEL build comes with the PureWeb server, C++ service SDK, HTML5 and Flex client SDKs, and the associated sample applications. The current supported version of RHEL is 6.5.

  • iOS support:
    • iOS 7: supported in releases 4.1.0 to 4.1.10 (no longer supported as of 4.1.11)
    • iOS 8: supported in releases 4.1.4 and later
  • Added support for streaming of rendered views using H.264 for select SDKs. H.264 encoding is supported in the C++ and .NET service SDKs and H.264 decoding is supported in the HTML5 client SDK. H.264 compression can help reduce bandwidth requirements. Although this support is feature-complete, it has not been fully optimized, and as such, it may not be ideal for production purposes.
  • Improved flow control when streaming rendered views, for a better overall user experience.
  • The documentation is now web-based and available online.
  • The PureWeb server now supports JDK 1.8 (as of release 4.1.3).

Known Issues and Recommendations

The following issues have been identified as expected behavior, or are due to limitations in a third-party application:

  • Memory bloat issue when running HTML5 clients in Google Chrome on a Windows operating system (PWEB‑4359)
  • PureWeb HTML5 clients use the Object URLs feature of HTML5. When running these clients in a Google Chrome browser on a Windows operating system, the URIs are cached instead of revoked. The URIs eventually get cleaned, but not until it is absolutely necessary, which creates a memory bloat issue. The client HTML5 application will not crash, however. Should end users wish to clean the cache manually, they can do so by navigating to a different tab in the Chrome browser, then returning the PureWeb HTML5 client.

  • HTML5 client logging — browser-specific peculiarities (PWEB‑3532)


    The PureWeb HTML5 client SDK performs a degree of internal logging. By design, developers creating PureWeb client applications see only the messages logged when there is an unexpected operation within the PureWeb SDK, while the low-level messages logged under normal operation are not visible to them.

    The visible messages are normally logged to the JavaScript console in the browser, but developers should be aware of the following peculiarities that have been found to exist in some versions of the browsers:

    • Firebug: the logging messages will not appear in the Firebug console, but rather will be sent to the default JavaScript console in Firefox.

    • Google Chrome: When using multiple user profiles within Google Chrome, logging messages will only appear in the window of the first profile that was accessed. This issue is not present when using only the default profile.
  • When running an HTML5 client in a Chrome browser on Android 4.x, the client application does not disconnect when the user closes the tab (PWEB‑3499)

    This is because the Chrome browser on Android does not trigger an onunload or an onbeforeunload event when the user closes the browser tab. Developers need these events to automatically disconnect the Android client. The issue is not noticeable to the end users, unless they try to reconnect to the client before the server has cleaned the orphaned session created when the tab was closed (by default, the server cleans up the processes every 30 seconds). In this case, they would see an error message. Note that this issue only occurs when the user attempts to disconnect by closing the tab in Chrome. If the client application provides another means to disconnect, such as a Log Off button that calls pureweb.disconnect(true), this issue will not arise if the user terminates the session using this method instead.


    To minimize the likelihood that users will see the error message when they try to reconnect to the client after closing the tab, set up the server to clean up orphaned processes more frequently. To do this, change the value of the process.shutdown.timeout property in the cluster-plugin.properties file. For more information, see Server-Service Interaction Properties.

  • Flash clients may exhibit poor performance when running in Firefox on Windows 7. (PWEB‑4345)
  • When running Silverlight clients in a Firefox browser on a Mac operating system, keyup events may not fire. (PWEB‑4338)
  • Silverlight clients may experience issues in Internet Explorer 11 when they are not running in compatibility mode. (PWEB‑4334)

    For more information about running in compability mode, see the following:


The following features are now deprecated:

  • Default Process

    The default process mechanism is being deprecated. This mechanism allows for instances of the specified process to be automatically started by the PureWeb server in all available user sessions.

  • Flex, Java Swing and Silverlight Client SDKs

    For anyone who is new to the PureWeb SDK, we recommend that you develop clients using the HTML5, iOS and/or Android client SDKs. For anyone who is currently using the Flex, Java Swing and/or Silverlight client APIs, we recommend that you consider migrating to one of the other supported clients.

  • Clustering

    While the current clustering mechanism is still supported for small multi-server environments (2 to 3 servers), it is recommended that a load balancer be used for such environments instead.

    A solution to improve management and scalability of multi-server environments is currently being developed for a future release of PureWeb.