Real-Time Innovations  Web Integration Service
  • Installation
  • Configuration
  • Usage
  • REST API
  • Tutorials
  • API Reference
  • Release Notes
  • 3rd Party Software

Release Notes v5.2.3

1 Supported Platforms

RTI® Web Integration Service is supported on the platforms in Table 1.

PlatformOperating System
Linux®CentOS 5.4, 5.5
CentOS 6.0, 6.2-6.4
Red Hat® Enterprise Linux 5.0
Red Hat Enterprise Linux 5.1, 5.2, 5.4, 5.5
Red Hat Enterprise Linux 6.0-6.5
Red Hat Enterprise Linux 7
Ubuntu® Server 12.04 LTS and 14.04 LTS
Mac®Mac OS X 10.8
Mac OS X 10.10
Mac OS X 10.11
Windows®All Windows platforms listed in the RTI Connext DDS Core Libraries Platform Notes for the same version number.

Table 1: Supported Platforms

2 Compatibility

2.1 Connext DDS Compatibility

Web Integration Service can be used to bridge data from applications built with RTI Connext DDS™, as well as RTI Data Distribution Service 4.5[b-e], and 4.4d, except as noted below.

  • Web Integration Service is not compatible with applications built with RTI Data Distribution Service 4.5e and earlier releases when communicating over shared memory. For more information, please see the Transport Compatibility section in the RTI Connext DDS Core Libraries Release Notes.
  • Starting in Connext DDS 5.1.0, the default message_size_max for the UDPv4, UDPv6, TCP, Secure WAN, and shared-memory transports changed to provide better out-of-the-box performance. Web Integration Service also uses the new value for message_size_max. Consequently, Web Integration Service is not out-of-the-box compatible with applications running older versions of Connext DDS or RTI Data Distribution Service. Please see the RTI Connext DDS Core Libraries Release Notes for instructions on how to resolve this compatibility issue with older Connext DDS and RTI Data Distribution Service applications.

2.2 Command-Line Options Compatibility

  • Starting in Web Integration Service 5.2.3, you must use -cfgName to specify the configuration to be used when instantiating all the applications.

2.3 XML Compatibility

  • Starting in Web Integration Service 5.2.3, <application> tags are children of <web_integration_service> tags. As a result, only the applications under the configuration indicated via the -cfgName command-line option are instantiated when the service is started. In previous versions, all the applications were children of the <dds> top-level tag and were automatically instantiated when the service was started.

3 What's New In 5.2.3

3.1 JSON Support for Writing and Reading Samples

Users can now write and read data samples using JSON. This complements the default XML format, making it simpler to map the data samples that are sent and received with Javascript objects. However, the definition of entities and QoS settings must be done in XML.

3.2 Simple Authentication Mechanism

Web Integration Service implements a simple authentication mechanism that ensures—if enabled—that only client applications with the appropriate API key can perform operations via the REST API. API keys are stored in an Access Control List file that can be created with Web Integration Service's executable. HTTPS must be enabled to ensure that API keys are not intercepted by malicious applications.

3.3 Service Configurations

For consistency with other RTI infrastructure services such as Routing Service or Persistence Service, we have introduced the concept of a Web Integration Service configuration. A service configuration contains a set of applications that are instantiated when the service is loaded. As a result, users need to specify a configuration when starting the service. Applications created via Web Integration Service's REST API will automatically be appended to the list of applications under the running configuration.

3.4 Improved Debugging Messages

To make it simpler to debug an application, Web Integration Service provides detailed logging information when the service is run with verbosity levels of 5 or greater. These messages are logged via command line and can be enabled using the -verbosity command-line option.

3.5 Query Strings to Configure Elements to Read from DataReader's Queue

We have added a set of query strings to select the samples from the DataReader's queue that must be read or taken. This includes filtering samples based on status conditions and filter expressions. We have also added the ability to configure whether to perform a take or a read operation (i.e., whether the samples read must be deleted from the DataReader's cache or not).

3.6 Updated REST APIs to Comply with the Latest Revision of Web-Enabled DDS OMG Specification

  • Changed DomainParticipant's resource name on URLs from participants/ to domain_participants/.
  • Changed DataWriter's and DataReader's resource name on URLs from datawriters/ and datareaders/ to data_writers/ and data_readers/.
  • Changed the default value of the Content-Type header
    from application/webdds+xml to application/dds-web+xml.
  • Added support for OMG-DDS-API-Key header.
  • Changed XML tags from "camelCase" to "snake_case" in the read data samples in the data and metadata sections.

4 What's Fixed In 5.2.3

4.1 Error Generating Log Messages with More than 1000 Characters

We have normalized the error message representation that we include in HTTP responses. As a result, we have fixed a crash in Web Integration Service when logging error messages longer than 1,000 characters.

[RTI Issue ID WEBINT-88]

4.2 Error Accessing Web Integration Service Concurrently

We have fixed a thread-safety issue in the internal DDS functions that look up entities. Because these functions were not thread safe in previous versions of RTI Connext DDS, concurrent access to Web Integration Service could result in a hang that required a service restart.

[RTI Issue ID WEBINT-98]

5 Known Issues

5.1 Configurations and Their Applications cannot use Same Name

Due to current limitations in Connext DDS's XML Parser, the name of the Web Integration Service configuration tag and the name of the applications within that configuration cannot be the same. For example:

<web_integration_service name="ShapesDemo">
    <application name="ShapesDemo"/>
</web_integration_service>

To workaround this limitation, use different names for the service configuration tag and the applications within. For example:

<web_integration_service name="ShapesDemo">
    <application name="ShapesDemoApplication"/>
</web_integration_service>

[RTI Issue ID CORE-3542]

  • 1 Supported Platforms
  • 2 Compatibility
  • 3 What's New In 5.2.3
  • 4 What's Fixed In 5.2.3
  • 5 Known Issues