5.1.0 Release Notes

JBoss Enterprise BRMS Platform 5

Important information related to the JBoss Enterprise BRMS Platform 5.1.0 product release

Red Hat Engineering Content Services

Abstract

These release notes contain important information related to the JBoss Enterprise BRMS Platform product. Known problems, additional resources, and other current issues are addressed here.

1. Overview

The JBoss Enterprise BRMS Platform is a complete solution for the development and management of rules-based applications using JBoss Rules in your enterprise. It provides a standards compliant, JCR-based repository for version control of rule related assets, a web-based management and development UI and the latest JBoss Rules 5 API technology.
These community developed and enterprise certified and supported products have been integrated and tested to provide a solid, robust, and scalable platform. Powered by legendary JBoss innovation and backed by Red Hat engineering and quality assurance, the JBoss Enterprise BRMS Platform is the solution of choice for rules-based application development and management in your enterprise.

2. Frequently Asked Questions

Q: Can I use a different repository than the default? What about JBoss Repository ?
Q: Where is the documentation ?
Q: What application and database servers is this product supported on ?
Q: Where can I find out more details about my support contract ?
Q: Where are the installation instructions ?
Q: What issues might I encounter when migrating to this release ?
Q: What Technology Previews are included in this release ?
Q:
Can I use a different repository than the default? What about JBoss Repository ?
A:
JBoss Enterprise BRMS Platform 5.1.0 has a new pluggable repository mechanism allowing any JCR compliant repository to be used. Apache Jackrabbit is still the default repository.
In the new year Red Hat is releasing JBoss Repository. JBoss Repository is built on the technology of the jboss.org community project ModeShape and is the next generation repository that will be used in future JBoss Enterprise products include JBoss Enterprise BRMS Platform and JBoss Enterprise SOA Platform.
JBoss Repository will be available as a add-on package for JBoss Enterprise BRMS Platform 5.1.0 and users will have the option to switch to the new repository.
Q:
Where is the documentation ?
A:
The JBoss Enterprise BRMS Platform documentation is available for online reading and download at http://docs.redhat.com/docs/en-US/JBoss_Enterprise_BRMS_Platform/.
The JBoss Enterprise BRMS Platform API documentation is also available for download from the Red Hat Customer Portal at https://access.redhat.com. It contains the full API reference in standard JavaDoc HTML format.
The standalone distribution of JBoss Enterprise BRMS Platform contains JBoss Enterprise Web Platform. The documentation for JBoss Enterprise Web Platform can be found at http://docs.redhat.com/docs/en-US/JBoss_Enterprise_Web_Platform/.
Q:
What application and database servers is this product supported on ?
A:
Refer to http://www.jboss.com/products/platforms/brms/supportedconfigurations/ for a complete list of the application and database servers that the JBoss Enterprise BRMS Platform is supported on.
The default configuration uses an embedded Derby database. This configuration is included only for evaluation, testing and demonstration purposes. It is not supported configuration for a production environment.
Q:
Where can I find out more details about my support contract ?
A:
Details of support policies are located at the following URLs:
Support Processes
Production Support Scope of Coverage
Production Support Service Level Agreement
Developer Support Scope of Coverage
Developer Support Service Level Agreement
Product Update and Support Policy by Product
JBoss End User License Agreement
Q:
Where are the installation instructions ?
A:
Complete installation instructions can be found in the BRMS Administrator Guide at http://docs.redhat.com/docs/en-US/JBoss_Enterprise_BRMS_Platform/5/html/BRMS_Administrator_Guide.
Q:
What issues might I encounter when migrating to this release ?
A:
Read Section 3, “Known Issues” to learn about the differences between this release of JBoss Enterprise BRMS Platform and previous releases that may cause difficulties when moving your applications to this version.
As a matter of best practice, Red Hat recommends that you test all of your existing applications on this new version of the JBoss Enterprise BRMS Platform before deploying it in your production environment.
Q:
What Technology Previews are included in this release ?
A:
The JBoss Enterprise BRMS Platform includes the following Technology Preview features:
  • JBoss Rules: Complex Event Processing (CEP)
  • BRMS: Customized selectors for package building
Technology Preview features are not fully supported, may not be functionally complete, and are not intended for production use. These features are included to provide customers with early access to upcoming product innovations, enabling them to test functionality and provide feedback during the development process.
Red Hat JBoss support will provide commercially reasonable efforts to resolve any reported issues that customers experience when using these features.

3. Known Issues

The following issues are known to exist in this version of the JBoss Enterprise BRMS Platform and will be fixed in a subsequent release.
https://jira.jboss.org/jira/browse/BRMS-117
The BRMS workspace grants full trust to users logged in to the BRMS Platform. It is recommended that you isolate the Application Server instance where the BRMS Platform is deployed from other production servers.
The following security precautions allow you to work with the BRMS Platform full trust model without impairing your production environment:
  • Install the BRMS Platform server on a non-production EAP instance without co-located applications
  • Install the BRMS server in a non-production trust zone, with the trust level of an employee workstation.
  • Define least-privilege permissions for the database user account being used for the BRMS database.
  • Define least-privilege permissions for the JVM process running the BRMS Platform server at the OS level.
https://jira.jboss.org/jira/browse/BRMS-271
The serialization of binary resources used in JBoss Enterprise BRMS Platform 5.0.0 is not compatible with the later releases. This is because of a necessary bug fix that unavoidably changed the structure of the data being serialized.
This means that:
  1. Client applications built using the JBoss Rules engine libraries from the 5.0.0 release are unable to use resources being served from a JBoss Enterprise BRMS Platform server of version 5.0.1 or later.
  2. Client applications built using the JBoss Rules engine libraries from the 5.0.1 and later releases are unable to use resources being served from a JBoss Enterprise BRMS Platform 5.0.0 server.
https://jira.jboss.org/jira/browse/BRMS-222
The JBoss Enterprise BRMS Platform logs several errors if it is deployed to the default server profile of JBoss Enterprise Application Platform. This is because the jgroups.jar JAR file is not deployed to the default server profile. This does not have any functional impact but the error messages can be avoided by deploying the jgroups.jar JAR file from the production server profile. To do this, copy the file jgroups.jar from the JAVA_HOME/server/production/lib directory to the JAVA_HOME/server/default/lib directory.
https://jira.jboss.org/jira/browse/BRMS-366
JBoss Enterprise Web Platform and JBoss Enterprise BRMS Platform install two slf4j bindings on the class-path. This causes an error to appear in the console. Testing has indicated that no errors are caused by these multiple bindings.
https://jira.jboss.org/jira/browse/BRMS-366
Importing an Microsoft Excel spreadsheet into in a Knowledge Base will cause an exception to be thrown ( StringIndexOutOfBoundsException ) if the spreadsheet was created in Excel 95 or earlier. This is because of an issue in the JXL library which is used to handle these files. This can be worked around by opening and saving the spreadsheet in Microsoft Excel 97 or greater or with OpenOffice.org Calc.
https://jira.jboss.org/browse/GUVNOR-254
If the user removes a global from a test scenario and then tries to access it from the expectation by clicking on the green triangle icon, a Javascript error will occur.
https://issues.jboss.org/browse/BRMS-499
In JBoss Enterprise BRMS Platform 5.1.0, the default rules compiler has been changed from Janino to Eclipse. The Janino compiler and required JAR files are still included for backwards compatibility.

4. Resolved Issues

The following issues have been resolved in JBoss Enterprise BRMS platform 5.1.0.
https://jira.jboss.org/browse/BRMS-11
If the user imported fact classes into a package, they would not appear in the user interface until the package was reselected. The software has been changed so that the package tab screen refreshes automatically after new JARs are uploaded or if the POJO model is saved.
https://jira.jboss.org/browse/BRMS-187
The Please Wait dialogue box was not disappearing after a DRL package was created. The user had to dismiss the dialogue box manually. The code has been fixed so that this dialogue box now disappears once the package appears in the list.
https://jira.jboss.org/browse/BRMS-190
The "Remove this block of data" button did not work if the user tried to remove a global from a test scenario. This button is displayed in the dialog box that appears when a global is selected via the Guided Editor. The global is now removed if the button is clicked.
https://jira.jboss.org/browse/BRMS-191
There were some problems when creating new business rules using the mortgage example meaning that rules could not be created. Options could not be added and values could not be inserted. A bug in the DSL has been fixed so that rules can now be created using this sample without problems.
https://jira.jboss.org/browse/BRMS-192
If the user tried to define a checkbox in the DSL, the result could no longer be validated. The code has been corrected and, as a result, rules containing Booleans will now validate correctly.
https://jira.jboss.org/browse/BRMS-199
Versions of assets were not being sorted in a logical order. They are now sorted chronologically.
https://jira.jboss.org/browse/BRMS-215
A new feature allows users use the Guided Decision Table Editor to write patterns without any type constraints.
https://jira.jboss.org/browse/BRMS-231
When importing models, package-info.java was not being excluded. This caused validation and package building to fail. This file is now excluded from the importation process so that validation and package building proceed without error.
https://jira.jboss.org/browse/BRMS-238
There was a bug which caused a runtime exception if the user tried to deploy BRMS in SOA Platform 5.0 with AS 5 and Tomcat. This was a coding error that has been rectified. As a result, the runtime exception will no longer occur.
https://jira.jboss.org/browse/BRMS-242
Rules package snapshots could be deployed to the server without requiring authorization. This has been fixed so that they must now be authenticated when they are deployed.
https://jira.jboss.org/browse/BRMS-247
BRMS now features the option for the user to configure notifications. These alert the user when new artifacts are created and existing artifacts are modified. Notifications can appear in the system itself or be sent using email.
https://jira.jboss.org/browse/BRMS-283
When either a Japanese or a Chinese locale was set, the welcome box would say "Guvnor" instead of "BRMS." This wording has now been modified to reflect the correct product name.
https://jira.jboss.org/browse/BRMS-293
The contents of the jboss-brms.war/NOTE.txt file incorrectly referred to the org.drools.brms directory. It has now been updated to refer to the correct directory names, which are org.drools.guvnor.Guvnor and org.drools.guvnor.Guvnor-aux.
https://jira.jboss.org/browse/BRMS-311
A display error meant that the last row in each decision table was never being shown. The only way to see the last row was to check the source. The way decision tables are displayed has now been changed. As a result, all of the rows can be seen.
https://jira.jboss.org/browse/BRMS-317
Two different versions of the xml-apis JAR file were included in the WEB-INF/lib directory, causing confusion for users. As xml-apis is no longer a required component, both of these have been removed.
https://jira.jboss.org/browse/BRMS-358
The server installation and configuration content of the User Guide from the previous versions has been relocated to it's own document, the BRMS Administrator Guide. This makes it easier for readers to find content.
https://jira.jboss.org/browse/BRMS-404
If an ESB application had a custom action that called an EJB session bean that used JBoss Rules to evaluate an incoming object, JBoss Rules was not able to see that object. This occurred because the classes were loaded via the jbrules.esb class loader rather than the context class loader and the class was cached between deployments, meaning the class loader was leaked. To fix this problem, the order has been changed so that the context class loader is activated before the current one. As a result, the rules now find the class loader that they are expecting to see.
https://jira.jboss.org/browse/BRMS-412
There was a problem with the use of escapes when using the "matches" operator. The drools.parser.processStringEscapes option has been added. Use of this feature means that matched patterns do not have to be escaped.
https://jira.jboss.org/browse/BRMS-416
The password for administration and mailman users was hard-coded. The software has been enhanced to make these user-configurable. Set them by editing the components.xml file.
https://jira.jboss.org/browse/BRMS-452
Line breaks in asset comments are now "escaped" properly so that they render correctly in Atom feeds.
https://jira.jboss.org/browse/GUVNOR-63
The Log Viewer screen now features a Clear Display button. Click it to clear long logs if they become cumbersome.
https://jira.jboss.org/browse/GUVNOR-74
Previously, some of the functionality that was available when creating a new snapshot was not available when copying a snapshot. Users can now choose a label or create a new one and a warning appears if the user copies a snapshot without selecting any options.
https://jira.jboss.org/browse/GUVNOR-109
The way in which selectors work has been changed. There are now several built-in ones for common tasks and they, and user-defined ones, can be chosen from a drop-down list.
https://jira.jboss.org/browse/GUVNOR-120
Users could not connect to the repository via JBDS. A WebDav error would appear. This was because the wrong URL was set. The software has been reconfigured to use the correct URL so it will now connect correctly.
https://jira.jboss.org/browse/GUVNOR-133
An agent could access every user's rules package. This was because no authentication was required. An option has been added to provide security if the user requires it. User credentials now have to be added to change-set.xml
https://jira.jboss.org/browse/GUVNOR-209
When using certain web browsers, if the user created a decision table, and then chose an operator and clicked on any text field, that field would immediately lose focus. A fix has been applied so that the focus no longer moves off the text field.
https://jira.jboss.org/browse/GUVNOR-233
The ruleflow diagram was not being rendered correctly. The arrows linking the flowchart boxes were not displaying. The rendering has now been fixed so that the diagram displays correctly.
https://jira.jboss.org/browse/GUVNOR-246
An archived package located in /WEB-INF/classes/mortgage-sample-repository.xml was incorrectly named Somethingelse. It has been renamed archivedExample.
https://jira.jboss.org/browse/GUVNOR-266
When a new package was created, debug messages were logged at the INFO level. The event log has now been made consistent with other logs and, as a result, debug messages are no longer recorded at this level.
https://jira.jboss.org/browse/GUVNOR-267
The deletion and archiving of packages was not being logged but users require this information for auditing purposes. This functionality has now been added so that full logs tracing all package actions are now supplied.
https://jira.jboss.org/browse/GUVNOR-268
The Event Log had a column labeled Undefined. This has now been relabeled Severity.
https://jira.jboss.org/browse/GUVNOR-272
If the user sorted the log in ascending order, it would appear to be blank. This was because empty lines were put at the top of the order. These lines are now filtered out so that only relevant data is viewable.
https://jira.jboss.org/browse/GUVNOR-275
The user interface would layer error message windows over each other, completely obscuring the bottom ones. To fix this issue, the way in which errors are displayed has been changed so that they all appear in one single dialog box.
https://jira.jboss.org/browse/GUVNOR-277
The event log was being truncated to display only the last 255 entries. The maximum size has now been increased to display the last 500 entries. Users can manually clear the log if they feel it is too long and unwieldy.
https://jira.jboss.org/browse/GUVNOR-278
The event log was displaying too little information about error conditions. To aid users, additional information is now supplied, such as by telling the user if the cause of the problem is a compilation error.
https://jira.jboss.org/browse/GUVNOR-279
One of the Archived Asset's table columns was incorrectly labeled "undefined." This column contains the Asset UUID, so it has been renamed appropriately.
https://jira.jboss.org/browse/GUVNOR-281
When a user tried to export a repository, standard information messages were being incorrectly logged at the ERROR level. This has been changed so that they are now logged at the DEBUG level, which is more appropriate and provides consistency with other logs.
https://jira.jboss.org/browse/GUVNOR-282
An error message would appear if the user selected a spreadsheet to upload into a rule. This was because the system was attempting to build the package each time so that it could obtain a classloader for suggestion completion. The software has been changed so that it no longer builds the package each time. It now obtains the requisite classloader from a JAR. As a result, the error message no longer appears.
https://jira.jboss.org/browse/GUVNOR-283
The user had to manually select the login screen's username field before typing his or her name. The focus is now automatically set on that field so there is no need to have to select it.
https://jira.jboss.org/browse/GUVNOR-300
There have been problems when two user sessions have tried to access or update the same package simultaneously. The system now displays an error message if this happens, informing the user of the issue and requesting that he or she refresh and try again.
https://jira.jboss.org/browse/GUVNOR-301
The Editing DSL tooltip has been removed. This is because the keyboard shortcut recommended in this tooltip was not supported by all browsers.
https://jira.jboss.org/browse/GUVNOR-308
If the user removes an entire package and then wishes to restore it, there was no way to select multiple assets to restore. The user had to select each asset individually, one at a time. New functionality has been added that allows the user to select multiple assets to restore.
https://jira.jboss.org/browse/GUVNOR-316
If the user created a new account with the same name as an existing account, the latter and its associated permissions, were overwritten. To address this issue, a warning message now appears if the user attempts to create a new account with an existing name.
https://jira.jboss.org/browse/GUVNOR-340
The last context in which a package was used is now remembered when the system chooses a package selector.
https://jira.jboss.org/browse/GUVNOR-355
Previously, when files were uploaded, the notification that this process had completed would appear in a pop-up box. Once the box was dismissed, the message would be lost which potentially led to user confusion about which files had been uploaded and which had not. To make the notification permanent, this message now appears in the form itself. Various details about the transaction are also written to the log in log4j format.
https://jira.jboss.org/browse/GUVNOR-358
A stack-trace error occurred when the user tried to create custom accumulate functions. This was due to the Exernalizable interface being improperly implemented. Changes have been made so that the Exernalizable interfaces is now deployed correctly and that the functions.jar file has been moved to the correct directory.
https://jira.jboss.org/browse/GUVNOR-360
If the user clicked on the Upload button without selecting a file, the File uploaded successfully message would appear. The software has now been corrected so that this message will not appear unless the user has selected a file to upload.
https://jira.jboss.org/browse/GUVNOR-366
The version of Jackrabbit used has been upgraded from 1.4.5 to 2.1.0.
https://jira.jboss.org/browse/GUVNOR-368
If the user tried to rename a rule, a blank text box would appear. That text box has now been enhanced so that it is populated with the rule's existing name.
https://jira.jboss.org/browse/GUVNOR-385
Usability improvements have been made to the Guided Rules Editor. Patterns are now much easier to understand due to a rearrangement of the box layout and rules are more explicit as a result.
https://jira.jboss.org/browse/GUVNOR-389
For reasons of usability, the number of pop-up messages has been reduced. They now only appear after a determined time period has elapsed.
https://jira.jboss.org/browse/GUVNOR-418
Users were unable to remove global facts from test scenarios. This has now been rectified so that when the user clicks on Remove this block of data, the facts are removed.
https://jira.jboss.org/browse/GUVNOR-426
The default enumeration was not working correctly. This was caused by a regression that disabled the drop-down selection boxes for definitions. Instead, only a text input box was available. The regression has been fixed and, as a result, the drop-down boxes are now available once more.
https://jira.jboss.org/browse/GUVNOR-430
If the user created a new action column and selected "Set the value of a field on a new fact", that fact would be given a generic name. The software has been enhanced so that user can give the fact the name of his choice.
https://jira.jboss.org/browse/GUVNOR-446
In advanced edit mode, if a leading word other than "global" or "edit" was used, the user could not return to basic mode and no error message was displayed. This has been changed so that an edit message now appears.
https://jira.jboss.org/browse/GUVNOR-450
If the user created a package from the DRL file with an extension other than .drl, a misleading pop-up dialogue box would appear, stating "Importing drl package, please wait, as this could take some time." This dialogue has now been re-worded.
https://jira.jboss.org/browse/GUVNOR-459
Users could not delete files from the Navigator view if they were using a combination of JBDS 2.0 and Microsoft Windows. A CoreException would occur. A code change has been made and, as a result, users can now delete files from this view.
https://jira.jboss.org/browse/GUVNOR-501
Validation errors would occur as one function could call another that was not yet specified. This happened because functions were being imported one by one. A code change has been made so that all of the functions are imported together as one. If any errors are found, they are then validated one by one, to find where the issues lies.
https://jira.jboss.org/browse/GUVNOR-526
If the user removed a model JAR, the facts that appear in the Imported Types dialogue box did not automatically disappear. They had to be removed manually. This has now been rectified so that they are deleted at the time the model is removed.
https://issues.jboss.org/browse/GUVNOR-537
Package security has been redesigned. Previously, a user could not access individual rules without permission to access all of the ones in an entire category. Now, package users can only access packages. They are not able to see categories in the Category Navigator.
Analysts can now only access categories. If they only have access to analyst rules, they will not be able to see packages in the Package Navigator.
https://jira.jboss.org/browse/GUVNOR-569
Users could not use the "<=" operator in rule patterns as this would cause an exception. This was because the BigIntegerLessOrEqualEvaluator constructor was set to private. It has now been made public so that the operator can be used.
https://jira.jboss.org/browse/GUVNOR-592
The user can now write patterns without any type constraint using the Guided Decision Table Editor. In the condition column configuration the operator selection is now optional.
https://jira.jboss.org/browse/GUVNOR-606
There was a problem whereby the user could not set fields when inserting a fact in the "THEN" section of a rule if the field in the "WHEN" section had been named but the fact to which it belonged had not. A code change has been applied to rectify this problem so that users can now set fields in the "THEN" section.
https://jira.jboss.org/browse/GUVNOR-631
If the user went into Administration->Archive, only the first forty archived items would ever be shown. A code change has been made and, as a result, all items are now displayed.
https://jira.jboss.org/browse/GUVNOR-632
The asset position displayed when the Next/Previous buttons were used in defaultPackage->BusinessRulesAssets was incorrect. For example, the first page would display items 1 to 40. When the user clicked Next, items 38 to 78 were displayed instead of 41 to 80. A change to the code has been applied so that the correct range of items are displayed on each page.
https://jira.jboss.org/browse/GUVNOR-866
The Japanese version of the message resource file contained grammatical errors. A better translation has been supplied.
https://jira.jboss.org/browse/JBRULES-2102
If the right-hand side of an integer to integer comparison was a null pointer, an exception would occur. This was because one of the functions lacked a check for null values on an object. This has now been corrected, so these exceptions will no longer occur.
https://jira.jboss.org/browse/JBRULES-2202
ClassCastExceptions occured if the user was utilising the accumulate function to insert declared events into the DRL file. This was caused by the MVELAccumulateFunctionExecutor requiring facts be serializable. This is no longer the case, so these exceptions no longer occur.
https://jira.jboss.org/browse/JBRULES-2204
AbstractWorkingMemory.executeQueuedActions() was not re-throwing exceptions it had caught. Instead it was doing a printStackTrace() on the exception. It has now been reprogrammed to re-throw exceptions so that users can see errors in the rules session and diagnose problems more easily.
https://issues.jboss.org/browse/JBRULES-2346
ConcurrentModificationExceptions would occasionally occur in multi-thread environments. This was due to a locking problem with the HashMap code. To rectify this problem, HashMap has been replaced with ConcurrentHashMap. As a result, users will no longer encounter these exceptions.
https://jira.jboss.org/browse/JBRULES-2425
Support for the "From", "Accumulate" and "Collect" conditional elements has been added to the Business Rule Editor. These conditionals facilitate complex rules.
https://jira.jboss.org/browse/JBRULES-2494
If escape characters appeared in quotation marks, they would erroneously be displayed when output, as were the quotation marks themselves. Escaped characters within quotation marks are now displayed and printed correctly and the surrounding quotation marks are removed.