Chapter 3. New features

This section highlights new features in Red Hat Decision Manager 7.11.

3.1. Business Central

3.1.1. Ability to sort the column values in a guided decision table

In guided decision tables, you can now double-click a column name to sort the values in ascending order, and if you double-click on the same column, the values are sorted in descending order. For more information, see Designing a decision service using guided decision tables.

3.1.2. Prometheus and Kafka data set provider

In Business Central, it is now possible to use the Prometheus and Kafka data set provider to create a data set to fetch the data from an external data source and use that data for the reporting and external components.

The following list provides a summary of the two new data set providers in Business Central:

  • You can use the Prometheus data set provider which generates a data set using the Prometheus query.
  • You can use the Kafka data set provider which generates a data set using metrics from Kafka broker, consumer, or producer.

For more information, see Configuring Business Central settings and properties.

3.1.3. Test scenarios

The test scenarios designer in Business Central is now available with the new features supported in Red Hat Decision Manager 7.11.

  • The test scenarios designer in Business Central now supports the nested enumeration data type attributes in rule-based test scenarios.
  • In the test scenarios designer, you can now see the actual test results instead of a generic message in a list or a map collection editor. It is now possible to monitor the following information in a collection editor:

    • The wrong value
    • The path to reach out to the wrong value
    • The correct value

For more information, see Testing a decision service using test scenarios.

3.2. KIE Server

3.2.1. PMML trusty implementation

You can now use PMML trusty implementation to embed a PMML call in a Java application or to execute a PMML model using KIE Server. For more information about PMML trusty implementation, see Designing a decision service using PMML models.

3.2.2. REST endpoints for specific DMN models

Red Hat Decision Manager now provides model-specific DMN KIE Server endpoints that you can use to interact with your specific DMN model directly over REST, without using the KIE Server Client (Java) API. The following REST endpoints of the KIE Server are automatically generated based on the content of the DMN model:

  • POST /server/containers/{containerId}/dmn/models/{modelname}: A business-domain endpoint for evaluating a specified DMN model in a container
  • POST /server/containers/{containerId}/dmn/models/{modelname}/{decisionServiceName}: A business-domain endpoint for evaluating a specified decision service component in a specific DMN model available in a container
  • POST /server/containers/{containerId}/dmn/models/{modelname}/dmnresult: An endpoint for evaluating a specified DMN model containing customized body payload and returning a DMNResult response, including business-domain context, helper messages, and helper decision pointers
  • POST /server/containers/{containerId}/dmn/models/{modelname}/{decisionServiceName}/dmnresult: An endpoint for evaluating a specified decision service component in a specific DMN model and returning a DMN Result response, including the business-domain context, helper messages, and help decision pointers for the decision service
  • GET /server/containers/{containerId}/dmn/models/{modelname}: An endpoint for returning standard DMN XML without decision logic and containing the inputs and decisions of the specified DMN model
  • GET /server/containers/{containerId}/dmn/openapi.json (|.yaml): An endpoint for retrieving Swagger or OAS for the DMN models in a specified container

For more information about model-specific DMN KIE Server endpoints, see Designing a decision service using DMN models and Interacting with Red Hat Decision Manager using KIE APIs.

3.3. DMN Designer

3.3.1. Enhanced suggestions for DMN literal boxed expressions

You can now see more suitable suggestions for literal boxed expressions in Business Central. When you enter a FEEL expression in the editor, the first suggestions that appear are based on the return type of FEEL functions and inferred type of the context.

3.4. Red Hat build of OptaPlanner

3.4.1. OptaPlanner 8

  • Red Hat Decision Manager includes OptaPlanner 8 as well as OptaPlanner 7. OptaPlanner 7 is now deprecated and might be removed in a future release. For information about migrating your projects from a previous version of OptaPlanner, see Upgrading your Red Hat build of OptaPlanner projects to OptaPlanner 8.
  • OptaPlanner has added a school timetable and vaccination appointment scheduler quick start for Red Hat build of Quarkus. For more information, see Red Hat build of OptaPlanner quick start guides.
  • The employee rostering and vehicle route planning starter applications have been migrated to the Red Hat build of Quarkus.
  • The dinner party example has been removed.
  • The Constraint Streams API is now richer, faster, and more stable and provides better error messages.
  • ScoreManager now supports score explanations.
  • The SolverManager API now provides the ability to listen to both the best solution events and the solving ended event.
  • OptaPlanner is supported on-premise and on Red Hat OpenShift Container Platform 4.x (embedded) with JDK 11 only.

3.5. Smart Router

You can configure Smart Router (KIE Server Router) for Transport Layer Security (TLS) support to allow HTTPS traffic. In addition, you can disable insecure HTTP connections to Smart Router. For more information, see the "Configuring Smart Router for TLS Support" section in Installing and configuring Red Hat Decision Manager in a Red Hat JBoss EAP clustered environment

3.6. Spring Boot

3.6.1. Deployment of Red Hat Decision Manager Spring Boot business applications on Red Hat OpenShift Container Platform

Documentation about deploying Red Hat Decision Manager Spring Boot business applications on Red Hat OpenShift Container Platform is now provided. For more information see, Creating Red Hat Decision Manager business applications with Spring Boot.

3.6.2. Integration with Spring Boot version 2.3.4

Red Hat Decision Manager now integrates with Spring Boot version 2.3.4.

For more information about integrating Red Hat Decision Manager with Spring Boot, see Creating Red Hat Decision Manager business applications with Spring Boot.

3.7. The BatchExecutionHelperProviderImpl.newXStreamMarshaller() method creates a secure XStream instance

It is now possible that the the BatchExecutionHelperProviderImpl.newXStreamMarshaller() method creates a secure XStream instance. The XStream instance accepts only pre-defined KIE classes in payloads by default. If you use the XStream instance created by the method, you must add allowed classes. For example, add domain model classes in your application code or you receive the ForbiddenClassException exception.

Example code to add allowed classes

final BatchExecutionHelperProviderImpl batchExecutionHelperProvider = new BatchExecutionHelperProviderImpl();
XStream xstream = batchExecutionHelperProvider.newXStreamMarshaller();
String[] allowList = new String[]{
    "org.example.model.Person",
    "org.example.model.Company"
};
xstream.addPermission( new WildcardTypePermission( allowList ) );