6.3 Release Notes
Release Notes for Red Hat JBoss BPM Suite
Abstract
Chapter 1. Introduction
1.1. About Red Hat JBoss BPM Suite
Red Hat JBoss BPM Suite is an open source business process management suite that combines Business Process Management and Business Rules Management and enables business and IT users to create, manage, validate, and deploy Business Processes and Rules.
Red Hat JBoss BRMS and Red Hat JBoss BPM Suite use a centralized repository where all resources are stored. This ensures consistency, transparency, and the ability to audit across the business. Business users can modify business logic and business processes without requiring assistance from IT personnel.
To accommodate Business Rules component, Red Hat JBoss BPM Suite includes integrated Red Hat JBoss BRMS.
The list of supported configurations for Red Hat JBoss BPM Suite is available at the Red Hat Customer Portal.
1.2. What Is New in Red Hat JBoss BPM Suite 6.3
Red Hat JBoss BPM Suite 6.3 is a minor release over the previous version 6.2. Noteworthy new features and improvements in this release are described below.
1.2.1. User Interface Improvements
- The Process Dashboard in Red Hat JBoss BPM Suite Dashbuilder has been significantly rewritten in version 6.3. It is now based on a native perspective as opposed to a separate web application, which, aside from generally improved user experience, gives you the ability to navigate directly from graphical indicators to related processes or task instances, and monitor them.
- The Intelligent Process Server user interface in Red Hat JBoss BPM Suite Business Central has been overhauled in this version, which makes creation and management of containers easier and more user friendly. For more information, see the Intelligent Process Server chapter of the Red Hat JBoss BPM Suite 6.3 User Guide.
- Styling and consistency was improved in Red Hat JBoss BPM Suite 6.3 throughout Business Central based on UI design principles and recommendations provided by the PatternFly project. The user experience is now more pleasant and smooth, and you can navigate Business Central quicker and with less effort. From the functional perspective, the interface remains mostly unchanged. Highlighted improvements are, among others, adjustable modal windows with more fitting default sizes, reorganized menus, and more.
1.2.2. Core
- In Red Hat JBoss BPM Suite 6.3, it is now possible to filter Human Tasks in Business Central based on business data. You can create a specific filter in the UI that selects only Tasks whose specific column contains desired values. The filter is then displayed as a separate tab in the Tasks List view. For more information, see the Creating Custom Task Filters chapter of the Red Hat JBoss BPM Suite 6.3 User Guide.
- Human Task Management in Red Hat JBoss BPM Suite 6.3 is improved with the ability of advanced search queries using QueryService, a service based on Dashbuilder Datasets. You can now query data using—among others—JPA entity tables, custom database tables, and more. For more information, see the Advanced Queries with QueryService chapter of the Red Hat JBoss BPM Suite 6.3 Development Guide.
1.2.3. Business Resource Planner
- Red Hat JBoss Business Resource Planner now allows you to configure your Solver and other assets from Business Central. You can create Solvers, include DRL rules and other assets in your Business Resource Planner project, and model planning entities and planning solutions. For more information, see the Solver Configuration in Business Central chapter of the Red Hat JBoss Business Resource Planner Guide.
- The Red Hat JBoss BPM Suite installer now includes the options to enable or disable the Red Hat JBoss Business Resource planner Intelligent Process Server during the installation process. The Red Hat JBoss Business Resource Planner Intelligent Process Server can now be controlled through the REST API. There is a number of new endpoints that support both XML and JSON responses. You can now create, control, and regulate your Solver through the REST API. For more information, see the Intelligent Process Server Functionality chapter of the Red Hat JBoss Business Resource Planner Guide.
-
General usability of the Red Hat JBoss Business Resource Planner has been greatly enhanced. JPA/Hibernate support for each Score subclass has been added to make persistently storing score results easier. The
SolverFactoryclass has a new method used for cloning, so configuring multiple Solvers dynamically does not require parsing the XML configuration file multiple times. Additionally, you can now use thefeatures.xmlfile when working in an OSGi environment.
1.2.4. Integration and Miscellaneous
- Starting from version 6.3, Red Hat JBoss BPM Suite supports integration with Red Hat Single Sign-On (RH-SSO) through an authentication connector. That means you can use RH-SSO for identity management in Red Hat JBoss BPM Suite, and for securing all of Business Central, Intelligent Process Server, and third party clients. For more information on the integration, see the Integrating Red Hat JBoss BPM Suite with Red Hat Single Sign-On chapter of the Red Hat JBoss BPM Suite Administration And Configuration Guide. For more information on RH-SSO, see the RH-SSO Getting Started Guide.
- Red Hat JBoss BPM Suite is now certified to work with MariaDB version 10.0.
- Red Hat JBoss BPM Suite is now certified to work with Microsoft SQL Server 2014.
- Starting from version 6.3, Red Hat JBoss BPM Suite is available in two new localizations: Russian and Traditional Chinese. Please be advised that Dashbuilder does not support Traditional Chinese.
Chapter 2. Known Issues
These are the known issues for Red Hat JBoss BPM Suite 6.3:
- Race condition with multiple job executor threads on Oracle [RHBPMS-1116]
-
When using the
AsyncWorkItemHandlerclass with Oracle Database, a job can be picked up by two threads if the thread pool is larger than one. For queries which use rownum + for update, Hibernate breaks the query in two. This allows for the same job being processed by differentAvailableJobsExecutorthreads. To work around the issue, use custom dialectOracle10gDialectthat disables follow on locking and allows you to configure initial delay of executor work threads so they are not firing at exactly the same time. - dashbuilder: Static data set definitions in WEB-INF/datasets dir not loaded on JWS3 (tomcat 8) [RHBPMS-850]
-
When you deploy Business Central on Red Hat JBoss Web Server 3, static Dashbuilder dataset definitions placed in the
WEB-INF/datasetsdirectory are not loaded. There is currently no workaround. Note that the ability to create dataset definitions in the Dataset editor (Extensions → Data Sets) is not affected. - Deployment of the kie artifacts (or kjars) using FluentKieModuleDeploymentHelper deploys only to local .m2 repository only [RHBRMS-1928]
-
Deploying KIE artifacts or kJARs using the
FluentModuleDeploymentHelperclass is not possible to remote Maven repositories, only to the local Maven repository (.m2). There is currently no workaround. - Tag filtering slows down performance of the Authoring perspective considerably [RHBRMS-2253]
- Enabling tag filtering in Business Central’s Authoring perspective results in degraded performance and can severely impact the operation of Project Explorer for large projects. There is currently no workaround.
- It is not possible to create Business Process on Windows server with I18n Business Process names [RHBPMS-2000]
Due to a wrong file encoding, it is impossible to create assets with i18n names (for example 日本語 or Русский) when running Red Hat JBoss BPM Suite on Windows. To work around the issue, set the file encoding of your application server to UTF8, for example:
set "JAVA_OPTS=-Dfile.encoding=UTF-8 -Dprogram.name=%PROGNAME% %JAVA_OPTS%"
in the Red Hat JBoss EAP
standalone.batwithin the:Mainlabel.- kie-aries-blueprint does not define ksession-ref and kbase-ref elements in XSD [RHBRMS-2322]
The elements
<ksession-ref>and<kbase-ref>can not be used with KIE-Aries-Blueprint, because they are only partially implemented, and are not defined inkie-aries-blueprint.xsd. These elements are used for declaring Blueprint beans forKieSessionorKieBasefrom a kJAR with a givenReleaseId. Their usage currently results in Blueprint rejecting the given XML. To work around the problem, declare a bean forKieContainer, and use that for creatingKieSessionorKieBasebeans manually as follows:<kie:kcontainer-ref id="kjar-kcontainer" releaseId="kjar-gav" /> <bean id="kieSessionBean" factory-ref="kjar-kcontainer" factory-method="newKieSession" destroy-method="dispose"> <argument value="kieSessionName"/> </bean>- OptaPlanner Kie server: Cannot marshall best solution score [RHBRMS-1399]
-
The Realtime Decision Server is unable to correctly marshall the score of Business Resource Planner’s best solution. The best solution’s score is incorrectly unmarshalled—The response contains an empty score or a score with the default value. The affected marshalling formats are JAXB (the functionality is entirely unavailable) and JSON (the only unmarshallable classes are
BendableLongScore,BendableBigDecimalScore, andBendableScore). The XSTREAM format is not affected. There is currently no workaround.
Chapter 3. Fixed Issues
These are some of the high priority issues fixed in version 6.3 of Red Hat JBoss BPM Suite, sorted by components.
3.1. User Interface
Table 3.1. BAM, Business Central, and Designer Issues Resolved in Version 6.3
| Issue | Description |
|---|---|
| Once designer in business-central saves bpmn2 file which uses I18n for an annotation name, those characters are garbled | |
| Error : no viable alternative at character '\' | |
| A kjar dependency which contains interface java classes fails to build with "JAXB can’t handle interfaces." | |
| Missing documentation for embedding business-central | |
| Search field does not find assets with single word name | |
| Unable to export PNG diagram when Lane name includes '&' | |
| Error registering Work Item Handler that receives no parameter | |
| Designer does not allow line breaks in many component | |
| Intermediate Events lost the DataInput/Output types when you close the process | |
| Table name case does not match leading to issue with MySQL Database in Unix systems | |
| git ssh issues with ssh-dss | |
| Dashbuilder - Filter properties selected on a filter form are not used in the filtering if data provider is based on "SQL query" | |
| Process Designer does not manage Intermediate CompensateEvent | |
| Opening a repository takes a long time in BRMS 6.2 | |
| Business Central Repo Clone Fails To Clone SCP Style SSH URLs | |
| Not possible to export process PDF when '&' is included in Task Name | |
| Column values are deleted after changing the operator in a Guided Decision Table | |
| GDT: Editor is not displayed if operation 'is contained in the (comma separated) list' is selected | |
| Cannot find KieModule with LATEST | |
| Unable to automatically create further branches in Managed Git Repository for BRMS 6.2 | |
| SQL Exception when trying to view process instances in Business Central Console | |
| When converting .xls to GDT, globals defined with short class names are converted to invalid Globals file | |
| 6.2.0: Remote java API: cannot get tasks assigned to different users | |
| BxMS6.2.0 Full Text search returns only 10 results even if it hits more than 10 | |
| process model image shows the node in waiting status grey instead of red after sending a signal event | |
| unable to delegate any tasks as Business Administrator on Business Central | |
| File in "dummy" repository is added to user Inbox when access a process model | |
| Default Tasks List filters doesn’t keep up with user’s roles changes | |
| AsyncWatchService dies when a RuntimeException is thrown from IOWatchServiceExecutorImpl.execute() | |
| 6.2.2 unable to open/edit some assets with specific user |
3.2. Core
Table 3.2. BRE and Core Issues Resolved in Version 6.3
| Issue | Description |
|---|---|
| Cannot use Task Comment longer than 256 characters | |
| Serialization problems on websphere as a result of BZ-1299549 | |
| Marshalling error accessing remote EJB services app with Sybase DB | |
| Include list of supported commands for Decision Server | |
| Unable to enable debug logging to javax.mail when using EmailWorkItemHandler in BPM Suite 6.1 | |
| JbpmJUnitBaseTestCase.assertNodeActive() throws "java.lang.RuntimeException: Process instance XXX is disconnected." in sessionPersistence test | |
| auto claim is performed even though multiple actors are specified in HT within swimlane | |
| TaskService.complete() throws NullPointerException without a meaningful message when a RuntimeManager with the deploymentId is not registered | |
| TaskService.getTasksAssignedAsBusinessAdministrator() doesn’t respect Groups of a User | |
| ArrayIndexOutOfBoundsException attempting to remove a rule containing a OR | |
| Error jitting a compareTo constraint | |
| Decision server should not return NullPointerException when a JSON is invalid | |
| NPE deleting an expired event in equality mode | |
| Missing database indexes - I18NText.Notification_Names_Id, BAMTaskSummary.OPTLOCK | |
| Drools execution stuck due to infinite loop | |
| IllegalAnnotationsException "JAXB can’t handle interfaces." in kie-server | |
| NPE removing a rule that contains a subnetwork | |
| Parsing of a complex constraint with an || causes a RuntimeException | |
| NPE exception is thrown when using jbpm kie ProcessService to issue signal event | |
| Kie-scanner fails to update kiebase if a modified rule makes reference to a global defined in a .gdrl file. | |
| Can’t signal sub process when using the EJB API | |
| LinkageError in org.mvel2.ParserConfiguration | |
| "NotSerializableException: org.drools.core.common.DefaultFactHandle" on EvaluatorWrapper while deepClone | |
| Rules are not firing as expected in BusinessRulesTask | |
| Cached modificationMask in property reactivity is correctly retrieved but not set into the propagation context | |
| ClassCastException on classes with the same FQCN after incremental build | |
| ServerImpl cannot be cast to KieServerInstance after migration from 6.1 to 6.2 | |
| fix reteoo intialization via system property | |
| Timers serialization not working with huge ids in BPM Suite | |
| Duplicated process instances running a process with a multi-instance sub-process |
3.3. Integration
Table 3.3. Fuse Integration Issues Resolved in Version 6.3
| Issue | Description |
|---|---|
| kie-aries-blueprint project fails to deploy if blueprint cm property-placeholder is used in blueprint | |
| drools-workbench-models-guided-dtable missing from drools-karaf-features and not OSGi packaged | |
| Drools Service Dependency in Fuse fabric | |
| Integration of KJAR Artifact Resolution with Profiles and Fabric Maven Proxy |
3.4. Business Resource Planner
Table 3.4. Business Resource Planner Issues Resolved in Version 6.3
| Issue | Description |
|---|---|
| Long benchmarker with many statistics go out of memory because statistic pointList survive untill the end of the benchmark | |
| Nearby Selection on VRP with 10k+ locations grabs a lot of memory for Local Search | |
| Nearby selection on SwapMoveSelector crashes if the entityselector doesn’t explicitly state the entity class | |
| optaplanner-webexamples vehicle routing on EAP doesn’t work | |
| Benchmark report: Solver configurations with uninitialized single benchmark results are ranked better than they should be | |
| SwingUI’s score in examples doesn’t get updated after manual move (regression) | |
| Single statistics fail when parallelBenchmarkCount is bigger than the number of solvers | |
| Workbench: Data modeler’s planning solution should implement Solution interface | |
| XStream support BendableScore doesn’t marshall to the scoreString | |
| HardSoftBigDecimalScore and SimpleBigDecimalScore’s toLevelNumbers() should return BigDecimals, not Doubles. | |
| Workbench: Solver config editor’s call to build a SolverFactory should pass the ProjectClassLoader as ClassLoader | |
| Possible performance issue after PLANNER-252 | |
| VariableListenerSupport.beforeVariableChanged() is severly slower (from CR1 to CR2) due to SortedMap usage | |
| VariableListenerSupport.beforeVariableChanged() is severly slower (from CR1 to CR2) due to HashSet.add() usage | |
| Benchmark report: Best score problem statistic with subSingleCount mixes median and average score | |
| TailChainSwapMove’s reverseChain() seems to cause a performance loss since 6.3.0.CR1 | |
| Wrong text in IllegalArgumentException in ScoreDirectorFactoryConfig | |
| 4 or more shadow variables might trigger cyclic source dependencies exception when that’s not the case | |
| Benchmark report: PickedMoveType statistics don’t work in the benchmark report any more (regression) | |
| VRP example with with time windows in FULL_ASSERT mode throws VariableListener corruption | |
| NQueensXStreamXmlPlannerBenchmarkFactoryTest fails on Windows | |
| Optaplanner Workbench: button to create a new file disappeared | |
| Default cloner doesn’t cloneMap() when an element of a Collection or a Map is a Map. | |
| Race condition with Solver.getBestSolution() | |
| scanAnnotatedClasses is not compatible with non-default ClassLoader or KieContainer because it doesn’t take it into account | |
| Workbench: solver configuration screen is visible for users without plannermgmt role | |
| Workbench: Solver Editor: No error is displayed when stateless kiesession is used | |
| Optaplanner should find defaultKieSession even if it not defined in kmodule.xml | |
| PlanningSolution annotation cannot be found when solver is built from kjar because scanAnnotatedClasses with a classloader without packgeIncludes does not work well | |
| NPE in SwapMove due to null selection in SwapMoveSelector | |
| Exe server: starting the same solver a second time (for a differen problem) should not return the best solution from the first run | |
| The score of the bestSolution is set before it is (fully) initialized, but from Solver.getBestSolution() it’s not detectable that it’s not yet initialized |
3.5. Miscellaneous
Table 3.5. Configuration, Installer, and Eclipse Tooling Issues Resolved in Version 6.3
| Issue | Description |
|---|---|
| Boundary event should not be attached to Script Task in JBDS for jBPM | |
| Multiple "None StartEvent"s should be validated by BPMN2 editor in JBDS | |
| BRMS 6.2 installer fails on specific OS/JDK combinations | |
| Not possible to add metadata entry | |
| SSH timeout value hard-coded for git server | |
| Java.lang.OutOfMemoryError: Java Heap Space during Installation thrown | |
| Migration tool (JCR-to-VFS) generate malformed rules |
Chapter 4. Enhancements and Feature Requests
These are the customer-reported enhancements and feature requests implemented in version 6.3 of Red Hat JBoss BPM Suite.
Table 4.1. Red Hat JBoss BPM Suite Enhancements and Feature Requests Implemented in Version 6.3
| Issue | Description |
|---|---|
| [GSS-RFE] Resetting timer cycle in a running workflow process | |
| [GSS-RFE] Allow users to register custom EscalatedDeadlineHandler like it was possible in jBPM5 | |
| [GSS-RFE] need settings to disable background build when opening Project Authoring | |
| [GSS-RFE] ability to check duplicate of ReleaseId(GroupId,ArtifactId and Version) with existing projects | |
| [GSS-RFE] Migration tool for a new Product version | |
| [GSS-RFE] BPMS suite certification on Microsoft SQL Server 2014 | |
| Import suggestions should act as a mask for imports | |
| A project which contains interface java classes fails to build with "JAXB can’t handle interfaces." | |
| Arrows are changed unexpectedly when Node is moved on the canvas | |
| Global Variable Details Data Type Attribute should be validated before running the process in BPMN 2 Diagram Editor | |
| ability to check duplicate of ReleaseId(GroupId,ArtifactId and Version) with existing projects | |
| [Drools][Quartz] The number of retries of a failed task are fixed. | |
| [GSS](6.3.z)Allow users to edit project’s GAV information in business central Project Editor when it has a parent | |
| [ENG](6.3.z) Kie Server - jBPM UI - process image markers not visible for some nodes | |
| Planner Benchmarker: warmUp should also use parallelBenchmarkCount to run them on multiple threads | |
| Generic moves for VRP: implement Clarke-Wright, two-opt and three-opt | |
| Solver configuration must be able to use KieSession defined in kmodule.xml | |
| Docs should link to Drools docs (or BRMS guide in product docs) | |
| OptaPlanner Execution Server prototype | |
| KContainer support: kie-api wrapper for SolverFactory and Solver so Workbench and Execution Server can treat it like a kjar | |
| Benchmark report: Icon for solver configurations that have uninitialized/infeasible single benchmarks | |
| Statistical benchmarking: run each single benchmark n times and average the results | |
| Determine interrupt philosophy on how to deal with InterruptionException | |
| Get rid of the '90s look | |
| Migrate UpgradeRecipe from txt to adoc | |
| Termination xml: daysSpentLimit and unimprovedDaysSpentLimit support | |
| Add optional ClassLoader parameter for PlannerBenchmarkFactory methods (usefull for OSGi) | |
| JPA/Hibernate support for each Score subclass, so storing a score in a database is easy | |
| Add a reliability tab to summary statistics in benchmarker report | |
| Test optaplanner-webexamples with Arquillian on WildFly | |
| IP-bom: arquillian, shrinkwrap dependency versions are incompatible with maven and aether versions | |
| Xstream support for BendableLongScore and BendableBigDecimalScore | |
| SolverFactory.cloneSolverFactory() so configuring getSolverConfig() dynamically per parallel request doesn’t require parsing the solver config XML each time | |
| Add abstract class AbstractSolution<S extends Score> which implements all Solution methods, so Workbench domain modeler can reuse it | |
| Reproducible statistical benchmarking | |
| CalculateCountTermination (usefull for performance benchmarking by QA) | |
| ExternalizedSingletonInverseVariableSupply doesn’t need to keep a Map of Sets after PLANNER-252 | |
| Fail fast if value range provider value type doesn’t match the planning variable’s value type | |
| Memory friendly nearby selection by caching only the n nearest entities (optionally adhering to some filter) | |
| Avoid getBestSolution() cast by generifying Solver and SolverFactory and return the best solution from solve() | |
| Generify ScoreDirector | |
| <customPhase> should support parameters in the solver configuration (so it can be tweaked using the benchmarker) | |
| Expose SolverFactory in the KIE API so it can be loaded from a KieContainer | |
| REST interface spec for OptaPlanner Execution Server | |
| Note in documentation that class of CustomScoreDefinition must have no-arg constructor | |
| Workbench: Solver config editor needs validate button that builds the Solver. | |
| Workbench: add optaplanner annotations domain editor functionality in kie distributions, but masked out by role plannermgmt | |
| Workbench: add optaplanner solver editor functionality in kie distributions, but masked out by role plannermgmt | |
| Graceful shutdown: if the Solver thread is interrupted, the Solver should terminate early | |
| All Score implementations should have a private no-arg constructor | |
| Upgrade commons-math3 from 3.2.0 to 3.4.1 |
Appendix A. Revision History
| Revision History | |||
|---|---|---|---|
| Revision 6.3.0-17 | Mon Mar 20 2017 | ||
| |||
| Revision 6.3.0-16 | Wed Feb 22 2017 | ||
| |||
| Revision 6.3.0-15 | Fri Dec 23 2016 | ||
| |||
| Revision 6.3.0-14 | Mon Nov 28 2016 | ||
| |||
| Revision 6.3.0-13 | Wed Oct 5 2016 | ||
| |||
| Revision 6.3.0-12 | Mon Oct 3 2016 | ||
| |||
| Revision 6.3.0-11 | Thu Sep 15 2016 | ||
| |||
| Revision 6.3.0-10 | Thu Sep 15 2016 | ||
| |||
| Revision 6.3.0-9 | Thu Jul 14 2016 | ||
| |||
| Revision 6.3.0-8 | Thu Jun 2 2016 | ||
| |||
| Revision 6.3.0-7 | Thu May 5 2016 | ||
| |||
| Revision 6.3.0-6 | Thu May 5 2016 | ||
| |||
| Revision 6.3.0-5 | Thu May 5 2016 | ||
| |||
| Revision 6.3.0-4 | Thu Apr 28 2016 | ||
| |||
| Revision 6.3.0-3 | Thu Apr 28 2016 | ||
| |||
| Revision 6.3.0-2 | Thu Apr 28 2016 | ||
| |||
| Revision 6.3.0-1 | Thu Apr 28 2016 | ||
| |||
