Changes in Functionality

The following notable changes in functionality have been made in TIBCO BusinessWorks™ Container Edition and are listed by release.

Release 2.6.0

General
The TIBCOBusinessStudio.ini file is present at the /studio/4.0/eclipse folder location on Mac operating system.

Earlier the TIBCOBusinessStudio.ini file was present inside TIBCOBusinessStudio.app folder.

Now from TIBCO BusinessWorks™ Container Edition 6.7.0, the TIBCOBusinessStudio.ini file is present under eclipse folder.

Change in the deployment method name The name of the deployment method is now changed from "Appspace" to "BW Appspace".
Change in a way to discover application server URL. When TIBCO BusinessWorks™ Container Edition application with REST reference and with Mesh service client enabled was launched from TIBCO Business Studio™ for BusinessWorks™, the application invoked a Mesh service from the application on an application server. The application server's URL was determined by fixed rules.

After a fully-qualified domain names (FQDN) service is provided, when the TIBCO BusinessWorks Container Edition application is launched, TIBCO Business Studio for BusinessWorks accesses the FQDNs and discovers the application server URL from it using a domain URL.

EGIT plug-in installation There is no need to install EGIT plugin manually.

EGIT plug-in version 4.4.1 is now a part of TIBCO Business Studio for BusinessWorks itself.

To verify the installation, navigate to Help > Installation Details > Plugins (Egit).

Migration
Addition of the module name as a prefix to the custom Xpath function Earlier, after migration, the customxpathfunction jar-name did not have prefix of the module name in it and it migrated as a plain customxpathfunction jar for the custom Xpath functions.

Now, the CustomXpathFunction jar that is generated by the migration tool contains the name of the module as prefix before the customxpathfunction jar name.

For example, in SampleApplication_CustomXpathFunction.jar, SampleApplication is the module name.

Runtime
The default local of the Docker file for TIBCO BusinessWorks Container Edition is UTF-8 Earlier, the default local of the Docker file for TIBCO BusinessWorks Container Edition was POSIX.

Now, The default local of the Docker file for TIBCO BusinessWorks Container Edition is UTF-8.

Release 2.5.4

Runtime
The application specific .properties files is given precedence over the common application.properties files for Spring Cloud Config in Docker. Earlier, priority was given to the common application.properties file over the application specific .properties files for Spring Cloud Config in Docker.

Now, as per the precedence rule of Spring Cloud Config server, the application specific .properties files is given priority over the common application.properties files.

Release 2.5.3

General
BWDesign Utility command There is an addition of a parameter to the export command -force.

Adding -force parameter to the export command, you can export the .EAR even if there are validation errors or warnings present in project.

Ability to export properties to Consul with Authentication

Properties can now be exported to CONSUL where authentication is enabled at CONSUL end. You may provide the X_CONSUL_TOKEN within TIBCO Business Studio™ for BusinessWorks™ while exporting the properties.

For more information, see "Exporting Properties to Consul Server ", in the TIBCO BusinessWorks™ Container Edition Appllcation Development guide.

Memory Limit for TIBCO BusinessWorks Container Edition Earlier, the MEMORY_LIMIT environment variable was used to limit the memory for TIBCO BusinessWorks Container Edition.

Now, the -m or --memory docker memory flag is used to limit the memory. The command is:

docker run --memory <other argument>.

This flag sets the maximum amount of memory the container can use. If this option is set, the minimum allowed value is 4 megabytes.

The -m flag also sets the heap parameters dynamically.

The Cancel button terminates an application execution from the debugger.

When you click the Cancel button on the Launching BWThorRuntime dialog box while debugging an application, the application execution is terminated immediately.

The Unused Resources tab shows only those folders with unused resources. Earlier Unused Resources tab displayed empty folders if there were no unused resources present in the module.

Now it shows only those folders that contain unused resources.

A new Exclude Unused Resources check box is added. A new Exclude Unused Resources check box is added on the Create a new EAR wizard if user has enabled guided user experience.
The bwdesign utility provides details of incorrect parameters. Earlier the bwdesign utility did not display any errors details for failure.

Now details in form of incorrect parameters are displayed.

The Catch block which does not have a fault selected throws a validation error. Earlier if no fault was provided for a Catch block, no error or warning was displayed.

Now, a Catch block without a fault throws a validation error.

Monitoring
Module properties on TIBCO BusinessWorks Container Edition Monitoring UI. Earlier, the password module properties values were visible in "### "hashed format on TIBCO BusinessWorks Container EditionMonitoring UI.

Now, the password type module properties values are visible as "***" format on TIBCO BusinessWorks Container EditionMonitoring UI.

Runtime
Tokenizing of application properties Earlier, after tokenizing the values for the application property was set to #<property_name>#.

Now, the values for the application properties after tokenizing are set to #//<applicationModule_name>//<property_name>#

Obfuscation of Password type properties for CyberArk Credential Management Integration Earlier, for CyberArk Credential Management , the value for properties of type password were not obfuscated.

Now, the password type values are obfuscated.

Release 2.5.2

Runtime
The application specific .properties files is given precedence over the common application.properties files for Spring Cloud Config in Cloud Foundry. Earlier, priority was given to the common application.properties file over the application specific .properties files for Spring Cloud Config in Cloud Foundry.

Now, as per the precedence rule of Spring Cloud Config server, the application specific .properties files is given priority over the common application.properties files.

Release 2.5.1

General
BWDesign Utility commands
  • There is an addition of a parameter to the setedition command -f.

    The command is:

    bwdesign setedition -name <project name> -t bwcloud -data <directory path of project> -f

    With the -f command, you will not be prompted about setedition confirmation.

  • There is an addition of a parameter to the export command -noprofile.

    Adding noprofile to the .EAR export command removes all the profiles from the .EAR file.

    The command is:

    export -ear <project name> -noprofile <filename>

  • There is an addition of a parameter to the create command -f.

    Adding -f parameter to create the command checks if an application with the same name already exists. If yes, then bwdesign deletes the existing application and creates a new application with the same name.

    The command is:

    create -f application <application name> <comma separated module names>

  • To generate or export the TIBCO BusinessWorks Container Edition properties file using the command-line interface (CLI), use the following command:

    export -pr <profile name> -t -alsomoduleproperty -includesystem <application name>.

Sorting of module properties It is now possible to sort the module properties in ascending and descending order.
Unit Testing Ability to provide gold values via input test file for Activity Assertion Mode.
Migration
Migration of count(tokenize()) function For count function, migrate the tib:tokenize() into tokenize()[string-length(.)>0] and keep migrating tib:tokenize-allow-empty() to tokenize().
Runtime
OSGI command
The appnodeprocessinfo OSGI command now provides three additional stats on heap usage:
  • Total Heap Memory
  • Free Heap Memory
  • Used Heap Memory

Release 2.5.0

Binding
Axis2 TPCL upgrade Axis2 TPCL upgraded to 1.7.9 version.

Use Apache Components for HTTP communication in SOAP.

Apache Commons library is now no longer used, because it is deprecated. Older imported projects using Apache Commons, continue to display Apache Commons as the client option, but Apache Components is used as the client for executing the HTTP requests, because this library is obsolete.
Support for empty SOAP Header element. Empty header element <soapenv:Header/> is passed in the SOAP envelop even if you don't configure the SOAP service with Headers.
General
Accessing the custom configuration server. Earlier, custom configuration management could be achieved using the getKeysForConfig() and replaceProfileValues() methods inside com.tibco.bwce.profile.resolver.ProfileResolverHelper class.

Now, to implement custom configuration management, register an OSGi service implementing com.tibco.bw.runtime.customProps.ExternalApplicationProperties interface.

The default value of SSL Protocol is changed to TLSv1.2 Earlier, The default value of SSL Protocol was TLSv1.

Now, the default value of SSL Protocol for SSL Client or Server Configuration is changed to TLSv1.2

The import profile supports properties to be imported as profile Earlier, when the profile was imported in the studio using the Import Profile option, it only supported the .substvar file.

Now, import profile supports Properties to be imported as profile.

LDAP Authentication Policy Earlier, while using the LDAP Authentication policy, the Test Configuration button overrode the result in the existing screen, so there was no way to identify if there was a change in the result behavior.

Now, a new Clear button is added, and the timestamp in the log is also displayed.

Jetty upgrade The Jetty server version is updated to version 9.4.18.

After upgrade, the Jetty TPCL does not support TLS v1.0, v1.1 and SSL v3. The behavioral change has been implemented internally in the Jetty library, to resolve existing security vulnerabilities.

Preventing .EAR file generation, if it has Java-related errors Earlier, if the project had Java related errors at design time, TIBCO Business Studio for BusinessWorks did not validate those errors while generating .EAR file. Now .EAR file is not generated, if it has Java-related errors.
The Include application modules check box from the Unused Resources view is now removed. The Include Application Modules check box is now removed from the Unused Resources view.

Implicitly, application modules are included during unused resources calculation.

When calculating unused resources for application modules, associated shared modules are also considered.

A few XPath functions are changed as per XML specifications Earlier, some of the XPath functions such as matches(), deep-equal() were not returning results as per XML Specifications.

Now, they return exact expected results.

The Jetty access logs are present for the HTTP Connector shared resource For TIBCO ActiveMatrix BusinessWorks applications that use REST service binding with the HTTP Connector resource, set the system property -Dbw.engine.http.jetty.accesslogs.enable to true in the VM arguments, and set the org.eclipse.jetty logger to DEBUG level in the logback.xml file to enable Jetty access logs.
Palettes
Ability to send message body as a part of request for DELETE REST Service method calls Request message body was not allowed as the payload for DELETE HTTP requests invoking REST services.

This has been resolved for the Send HTTP Request activity with Jetty HTTP Client.

It is compulsory to use the Jetty HTTP client library in the HTTP Client resource with Send HTTP Request activity for achieving this functionality.

Runtime
The name of the property is shown while using configuration management services. Earlier, while using SPRING_CLOUD_CONFIG as configuration management services, an integer property that had an empty value as the configuration value showed a Number Format Exception error but it did not show the name of the affected property.

Now, the name of the property is shown with exception when the value of property is empty when using configuration management services.

Release 2.4.5

General

The Subprocess span are listed under the callProcess span or the Invoke activity.

The Subprocess span previously were listed directly under the parent activity

Now, the subprocess is listed inside the main process span.

Release 2.4.4

Design-Time

The Export Files after exporting the profile as a properties file now contains keys and value.

The export file after exporting the profile as a properties file previously used to contain only keys

Now, the properties file after exporting contains the key and value.

General

The default base OS is changed to debian:stretch-slim

The default base OS image from debian:jessie-slim is changed to debian:stretch-slim, because the exisiting debian:jessie-slim image is deprecated.

TIBCO BusinessWorks Container Edition uses non-root users for container execution.

TIBCO BusinessWorks Container Edition used root users during container execution. This has been changed to use non-root users by default.

Runtime

The MAINTAINER tag is changed to LABEL tag in Dockerfile.

The deprecated MAINTAINER tag is now replaced with the LABEL tag in the Dockerfile.

Release 2.4.3

Binding

You can get status messages for Invoke activity for REST Reference Binding.

To get the status message for the exception occured, set either */* , or use "text/html" in the Accept HTTPHeader field on the Input tab of the Invoke REST API activity.

General
Jetty upgrade
The Jetty server version is updated to version 9.4. The following list shows its impact:
  • Generation of extra dynamic headers
  • Difference in case of charset
  • Space in the HTTP header name is not supported. If there is a space in the header name, the following error occurs: Bad message- 400 - Illegal character.
  • Change in syntax for Secure REST API:

    change org.eclipse.jetty.plus.jaas.spi.LdapLoginModule to org.eclipse.jetty.jaas.spi.LdapLoginModule .

    For more information about changes, see the Securing the bwagent REST API section in the TIBCO ActiveMatrix BusinessWorks™ Administration guide.
Migration

The default Activation mode is set to Multiple AppNodes.

After migration, activation mode for processes and subprocesses was by default Single AppNode.

Now it is changed from Single AppNode to Multiple AppNodes.

Changes in Functionality due to JRE Upgrade

With the current release TIBCO BusinessWorks™ Container Edition 2.4.3, the Java Runtime Environment (JRE) is upgraded from JRE Update Release 144 to JRE Update Release 192 . For detailed list of changes made between these two release, see Java Development Kit 8 Update Release Notes at https:// www.oracle.com. The following list shows most notable changes that can affect the product.
  • Java™ SE Development Kit 8, Update 191 (JDK 8u191)
    • Disabled all DES TLS Cipher Suites
  • Java™ SE Development Kit 8, Update 181 (JDK 8u181)
    • Removal of Java DB also known as Apache Derby.
  • Java™ SE Development Kit 8, Update 171 (JDK 8u171)
    • XML Signatures Signed with EC Keys Less Than 224 Bits Disabled
    • 3DES Cipher Suites Disabled
  • Java™ SE Development Kit 8, Update 161 (JDK 8u161)
    • RSA public key validation
    • Restrict Diffie-Hellman keys less than 1024 bits
    • Provider default key size is updated
    • Unlimited cryptography enabled by default .
    • Disable exportable cipher suites
    • Disable JARs signed with DSA keys less than 1024 bits
  • Java™ SE Development Kit 8, Update 151 (JDK 8u151)
    • Better keystore handling

Release 2.4.2

Monitoring
The monitoring application will fail to start if issues are detected with the database. Monitoring application continued even when there were issues with database.

Now, if there are issues detected with the database monitoring application it fails to start.

Design-time
Manifest yml file is not auto generated while creating container project. The manifest.yml file was auto-generated when a new container project was created.

Now, the manifest.yml file generates only for Pivotal Cloud Foundry. The manifest.yml file can be manually generated with the Create manifest yml context menu option for cloud foundry application.