5.9.17 released on March 15, 2022 for:
Backward compatibility
H2 database version 2.0.
This version of TIBCO EBX® provides a new version of the H2 database engine, which does not support an automatic upgrade of existing repositories. These must be manually updated through the dedicated procedure. The alternative is to use the former versions of h2 in your deployments.
URLs configuration.
Two new properties have been added to the ebx.properties
file to force the use of the HTTPS protocol and its related properties for building URIs.
In the user interface, the 'URL Policy' configuration in the Administration area becomes deprecated.
See URLs computing and URL policy (deprecated) for more information.
User Service integration.
In order to improve User Service integration, a new interface has been introduced: UserServiceForCreate
. It is now recommended that implementations of UserServiceRecordFormFactory.newUserServiceForCreate
return an instance of UserServiceForCreate
rather than UserService
.
Log changes and limitations.
Properties ebx.log4j.appender.xxxxx
support only com.onwbp.org.apache.log4j.ConsoleAppender
and com.onwbp.org.apache.log4j.net.SMTPAppender
. Other types of appenders are not supported.
Renderers are not supported.
Properties ebx.log4j.appender.xxxxx.layout
support only com.onwbp.org.apache.log4j.PatternLayout
Property ebx.log4j.disableOverride
is no longer supported.
Properties ebx.log4j.additivity.log.wbp.xxxxx
is no longer supported.
Supported databases:
Oracle 18c is no longer supported.
PostgreSQL 9.6 is no longer supported; the minimum required version for PostgreSQL has been upgraded to 10.
See Supported databases for more information.
5.9.16 released on September 15, 2021 for:
Backward compatibility
Workflow activation property.
Since the fix of the CP-22136, the value of the property ebx.workflow.activation
(in EBX® configuration file) must be true
or false
(case-insensitive). Any other value throws an fatal exception at server launch.
5.9.15 released on September 15, 2021 for:
Backward compatibility
Check on default constraint on primary keys of type string.
Since the fix of the CP-21856 the check of the default constraint defined on primary keys of type string is now stricter. The default constraint that forbids non-collapsed whitespaces is now blocking for all operations. It is still possible to override this default constraint by specifying a specific pattern that allows non-collapsed whitespaces on primary keys of type string.
See Whitespace handling for primary keys of type string for more information.
Supported databases:
A new database is supported: Google Cloud SQL for PostgreSQL, version 9.6 or higher.
5.9.14 released on June 11, 2021 for bug fixes.
5.9.13 released on January 20, 2021 for:
Supported databases:
Oracle 11g is no longer supported; the minimum required version for Oracle database has been upgraded to 12c.
PostgreSQL 9.4 and 9.5 are no longer supported; the minimum required version for PostgreSQL has been upgraded to 9.6.
Microsoft SQL Server 2008 R2 is no longer supported; the minimum required version for SQL Server has been upgraded to 2012 SP4.
See Supported databases for more information.
Built-in REST token authentication create operation: The user authentication, from the token build process, can now be performed against the HTTP request. See Token authentication operations for more information.
Performance of Workflow inbox: The performance of the inbox has been improved by upgrading the existing cache system.
5.9.12 released on November 10, 2020 for:
Installation: The Xalan and Xerces packaged libraries upgrade introduces new dependencies toward classes provided by the Java runtime environment 9. These classes can be added, without the resort of a Java runtime environment 11 LTS, by installing the new bundled jar archive called xml-apis-1.4.01.jar
. If a Java runtime environment 11 LTS, or above, or a WebLogic 12c R2 application server is used to run the application, then no additional installation steps are required. See XML Catalog API and Installation notes for more information.
5.9.11 released on October 9, 2020 for:
Association tables Options have been added to the Data Model Assistant, to hide toolbars of association tables. On association nodes, options can be found within the setting group "Rendering in forms". It is also available programmatically from the Java class UITable.
5.9.10 released on June 4, 2020 for:
5.9.9 released on March 30, 2020 for:
Form node label: It is now possible to add or remove a mandatory indicator (*) next to the label of a form node to simulate that it is mandatory by using JavaScriptCatalog.ebx_form_setMandatoryIndicator
in JavaScript or UIFormWriter.addJS_setNodeMandatoryIndicator
in Java.
User Service API:BeanElement.addFacetTableRef
now throws an explicit exception if the given table is in a snapshot. BeanElement.addFacetTableRef
has been added. This new method allows the declaration of a table reference to a table in the current dataspace or snapshot. ToolbarButton.setHighlighted
has been added. This new method allows defining if a toolbar button should be highlighted by default.
Backward compatibility: To comply with the restrictions applied on foreign key constraints the method BeanElement.addFacetTableRef
now throws an IllegalArgumentException
if the specified table is in a snapshot.
TIBCO Software Inc. Support: The EBX® Support team can now be contacted from the https://support.tibco.com website (an account is mandatory in order to access, follow the 'Register' process). Visit the About Support section of this page for more details.
5.9.8 released on February 11, 2020 for:
Changes on supported environments: For Mozilla Firefox, the support of ESR 60 has shifted to ESR 68. For Microsoft Edge, the support of 42 has been shifted to 44.
5.9.7 released on November 7, 2019 for:
Automatic installation on first launch: It is now possible to enable automatic installation on first launch.
New supported database: Amazon Aurora PostgreSQL 2.3 (compatible with PostgreSQL 10.7) has been added as one of the supported database engines.
Default display density: A new feature allows administrators to set the default density for all users. The display density will be 'Compact' by default.
Perspective selector: A new icon for the perspective selector.
Custom perspective: The perspective name of a custom perspective has been added to the navigation bar's header along with a new icon for the expand/collapse button.
5.9.6 released on September 9, 2019 for:
To speed up the web applications server startup, the JAR files scanner should be configured.
5.9.5 released on July 22, 2019 for:
5.9.4 released on June 20, 2019 for:
Optimization of compact density: These evolutions provide a denser layout when using the compact density. Compacting the space around the workspace, the toolbar and the table rows increases the space that is available for displaying the workspace content. It also allows displaying more records for a given screen resolution than in previous 5.9 versions. Therefore, customers who deal with a lot of records may visualize more records at a glance.
Workflow API: The method ProcessInstanceStep.isHiddenInProgressView
has been added to know if the step has been defined as hidden in the progress view.
New support team contact details: The TIBCO EBX® Support team can now be reached at ebx-support@tibco.com. Deliverables can be found on the TIBCO eDelivery website (an account is mandatory in order to access eDelivery, please contact the support team to request one). The license key can be retrieved from the TIBCO eDelivery website.
5.9.3 released on March 25, 2019 for:
New branding: The EBX® logo has been updated so as to reflect the new product name: TIBCO EBX®. This renaming also impacts the product documentation and the Javadoc, in which you will now find the following names: TIBCO EBX® and EBX®. The logos have also been updated in all the documentation. As far as the user interface is concerned, a new shade of blue has been implemented and replaces the former, lighter, EBX® blue.
New versioning: The TIBCO Software Inc. Release Version Schema Policy is now enforced and fully applied. This Policy is composed as follows: <major>.<minor>.<servicePack>. What used to be called Fix A, B, C etc. will now be an increment of the latest Service Pack number. The concept of "Fix" will no longer exist.
Backward compatibility: the 'Welcome message' and 'Window name' fields no longer support HTML. A text containing HTML tags is now escaped. In order to display an HTML entity, an alternative is to use the unicode number corresponding to the entity.
5.9.0 fix B released on January 21, 2019 for:
Copy-paste in Grid edit: the former limitation (detected in version 5.9.0) has been removed, it is now possible to paste in foreign keys referring to a primary key which is not a simple string field.
New parameters for servlet URL: New parameters for UI servlet URL in ebx.properties.
The issue on Oracle WebLogic server version 12.2.1.3
, detected since version 5.9.0, for the TIBCO EBX® redeployment, is fixed. See Installation note for WebLogic 12c R2 for more information.
The issue regarding the HTTP Authorization header override on Microsoft Internet Explorer or Edge Web browsers, detected since version 5.9.0, is fixed. See CP-16355 and HTTP Authorization header policy for more information.
5.9.0 fix A released on December 10, 2018 for:
This fix includes minor layout improvements that will ensure a smoother display of the user interface.
Similarly to the JavaScriptCatalog.ebx_setWorkspaceTitle
that was recently added in version 5.9.0, this fix includes the method JavaScriptCatalog.ebx_getWorkspaceTitle
that allows retrieving the title of the current workspace. For more information, please refer to the corresponding Javadoc.
5.9.0 released on October 26, 2018.
Some of the most notable features offered by this release are:
New Skin renovates the graphical aspect of the user interface.
The REST Toolkit is a Java API facilitating the development of custom RESTful services.
The workflow diagram now provides a BPMN-like representation of workflow models.
A new database is supported, SAP HANA, and an inter-database migration service is available.
Concerning supported environments, this release brings some notable changes that are documented in the section Changes on supported environments.
Before proceeding with the upgrade of an existing environment, ensure that you have carefully read the Version upgrade section.
Modal pop-up window (1) | Modal pop-up windows have been removed from most EBX® screens. Instead, the requested content overlaps the workspace and a breadcrumb allows the user to return to the previous content. |
Translucent bottom bar (2) | The new bottom bar displayed for forms is now translucent. This allows the end-user to become more aware that the page can be scrolled. More technical details below. |
Hierarchical views | Action buttons of hierarchy nodes are now displayed to the left of each node (no longer to the right). |
Tabs with home icon | On a record form, when tabs are enabled in the data model definition of the table, the main tab used to be displayed with a home icon. This icon is no longer displayed (the 'Main tab label' is still displayed; by default, this label is 'Main'). As a consequence, the existing Java methods |
Dataset tree structure | The displayed record is still displayed below the current table but is no longer displayed with a selected style. |
Filter icon and filter pane | The magnifying glass icon for filtering has been replaced with a funnel icon . Actions that remove all filters or quickly apply a given filter have been moved to the filter pane. |
A new search pane 'Find in hierarchy' is now available for hierarchical views.
As opposed to filtering, it allows the user to position the members whose label matches the search criteria while keeping the hierarchy displayed. The matched member is highlighted and opened, i.e. its first-level children are displayed. Two buttons (next and previous) are provided to find the following or the previous member matching the search criteria.
This implementation is explicitly announced as a beta version since it contains some limitations, particularly:
it is only available for pure recursive hierarchical views,
the search is only applied to the labels of the members of the recursive dimensions.
When creating an associated record directly from an association, the filters defined in the data model are now evaluated. Applied filters include the one defined by the association and those defined by the foreign key(s) involved in the association. As a consequence, it is now forbidden to create an associated record that does not comply with these filters.
The feature includes the possibility to customize the message displayed to the end-user when attempting to create an associated record that does not comply with the defined filters. If the filter is defined by the association, a new message property is available, see association filter for more information; for a filter defined on a foreign key, the existing validation message is reused.
These filters are also evaluated when displaying the list of records that can be associated directly from an association (however, in the case of an association over a link table, the filter defined by the foreign key to the source table is ignored).
This release offers new capabilities to customize the user interface through additional configuration or Java programming.
It is now possible to use custom user services to replace default model-driven record forms. Regarding UIForm
, it allows implementing more advanced user interfaces.
See UserServiceRecordFormFactory
for more information.
When a record is being created from a foreign key field or from an association, the Java API now provides information about the source record. This new information is available in table triggers and in the new access rule for create.
For more information, see NewRecordContext
and the two interfaces extending it.
It is now possible to define if the service is to be launched in the current context or in a web component. In the latter case, it is possible to specify values for the declared parameters of the service as well as the characteristics of the modal containing the service.
These options are available both in the Data Modeling Assistant and via the Java API.
In order to be available as a Web Component in a toolbar action, a service must be declared as such. See WebComponentDeclarationContext.setAvailableAsToolbarAction
.
With New Skin, an inner white border is always displayed on all workspaces. For developers who exceptionally want to have full width and height components (as the grid edit), a new method isPaddingEnabled()
has been added to UIFormPane
, UserServicePane
and UserServiceRawPane
.
Along with full height, the bottom bar is now translucent; the JavaScript function obtained through UIJavaScriptWriter.addJS_addResizeWorkspaceListener
gives a second parameter to the JavaScript listener in order to not take into account the bottom bar height. Developers can now size their components to display to the back of the bottom bar.
Perspective activation and menu items include a new "allowed device" property.
This property allows to specify devices that can display the perspective or menu item. Currently only two devices are supported: "EBX® Web Application" and "EBX® GO".
For more information, see Perspective creation and Child perspective menu.
This feature will be supported in the next version of EBX® GO that is expected in a few months.
A new attribute has been added to perspective actions: the action unique name. This new optional attribute is used by new Java API to select a perspective action. Also, methods to select a perspective have been added.
Web component API: UIHttpManagerComponent.selectPerspective
and UIHttpManagerComponent.selectPerspectiveAction
.
UIResourceLocator: UIResourceLocator.getURLForPerspectiveSelection
and UIResourceLocator.getURLForPerspectiveSelection
.
UIJavaScriptWriter: UIJavaScriptWriter.addJS_switchToPerspectiveAction
.
It is now possible to restrict the URL used to redirect the end-user at the end of a Web Component session (as a reminder, this redirection can be specified either by means of the Web Component redirect parameter, or through the 'Exit policy' in the user interface configuration). In the 'Administration' section, by selecting 'User interface configuration > Advanced perspective', then the 'Exit policy' form, it is possible to specify the list of authorized domains and whether HTTPS is mandatory for each domain.
For more information, see Exit policy.
Two new parameters (ebx.servlet.http.ui.path
and ebx.servlet.https.ui.path
) are added to ebx.properties in order to allow the customization of the UI servlet path in the URL.
If they are not specified, they default to "ebx-ui/". See URLs computing for more information.
A new configuration for the maximum length of text areas are added to 'Ergonomics and layout' section under 'Administration' in order to allow the customization of the allowed length of text areas. You can also disable the check of maximum length of text areas.
In order to bypass the existing AccessRule
limitation which prevents dissociating a record creation from a column display, a new kind of access rule has been added. Once set on a record node, such a rule will be evaluated each time a record is created, in addition to any other AccessRule
that might also be set on this node.
For more information, see AccessRuleForCreate
.
When displaying the perspective menu, permissions are now evaluated before adding any action of the "service" type. As a consequence, services that are not allowed for the user will no longer be displayed.
Also, to identify this new context in the service permission rules, the new toolbar location ToolbarLocation.PERSPECTIVE_MENU
has been added.
In order to help modelers have a clear view of the workflow model they are designing, a BPMN-like workflow diagram is now available.
From the hierarchical view toolbar, it can be accessed by clicking on the button with the following icon: .
Some features of this view:
nodes and links are movable, the layout can be customized and saved;
a grid can be displayed, which is helpful to align nodes and links;
it is also possible to zoom in/out, revert to a previously saved state, and export to PNG/SVG format.
This view is a service with limited edition abilities: it is only possible to modify existing steps, and links still need to be modified through the hierarchical view.
See Visualizing the workflow diagram for more information.
The workflow inbox counter is now refreshed asynchronously, even when no action has been launched. Two parameters have been added to the configuration of workflows under the section 'Temporal tasks' to configure this behavior.
See Workflow inbox counter configuration for more information.
Since it is more intuitive to have the possibility to read previous comments before leaving one, it is now possible to see all the comments of a workflow directly from the user task.
Clear history of selected workflows | In the workflow history table view, one can now remove the history of workflows that have been manually selected. To complete the cleaning, a dataspace purge will have to be executed. See Backward compatibility for more information regarding the new procedure for deleting history data. |
Add a new scheduled task | The new |
Duplicate a step | In the workflow modeling, one can now duplicate a step that was previously defined. To facilitate reuse, the new step is created without parents. It can then be relinked to another existing step. |
New built-in script to remove a record or a list of records | It is now possible to use a built-in script task to delete records, provided that the following properties are specified: the dataspace, dataset and XPath which identify the record(s). |
New Java API to retrieve process instances from a publication name | When a workflow model is updated and republished with the same publication name, it was not possible to retrieve the workflows that were launched beforehand (the publication name is reset to be reused). To retrieve workflows from their launching publication name (the publication name with which they are launched), including the ones whose publication is no longer active, two new methods have been added to the Java API: |
New java API to retrieve the original publication name from a published process | A new method has been added in order to retrieve the original publication name: |
New columns added to facilitate sorting and filtering on publication names | The publication structure has changed and the original publication name is now stored in the 'Publication table'. Two new columns have been added for both
By default, they are hidden on the different views of the Workflow section (Inbox/Active workflows/Work items/Completed workflows) but these columns are available for custom views. |
Improved publication labels | The initial publication name is now stored and can be displayed even if the publication has been disabled or unpublished.
|
Improved process labels | Legacy display of process labels also contains the publication name: the publication name is saved and thus displayed all the time. The template is as follows:
|
It is now possible to define constraints on null values using the validation rule editor in the Data Model Assistant. See validation rules for more information.
It is now possible to specify the behavior of a validation rule defined on fields, when a user submits a form with validation errors. That is, it is now possible to indicate whether an input that would violate a validation rule will be rejected or not when submitting a form. See validation rules for more information.
A new class has been added to specify the settings when validating a dataset, a table or a record. This new class includes new properties that allow to specify:
if the validation of a dataset, a table or a record must wait until the end of a concurrent validation that is being performed by another process.
that the result of the validation of a dataset or a table must not be added to the logs generated by EBX®.
See ValidationSpec
for more information.
It is now possible to disable the incremental validation of a dataset during the execution of a procedure. The use of this new feature may be useful when performing mass modifications during a procedure. That is, disabling incremental validation prevents the validation of each update performed during a procedure and it can then lead to important performance improvements during mass updates.
See ProcedureContext.disableDatasetValidation
for more information.
New methods have been added to the Java API to reset the validation report of a dataset, a table or of the datasets contained in a dataspace.
See Adaptation.resetValidationReport
, AdaptationTable.resetValidationReport
and AdaptationHome.resetValidationReports
for more information.
It is now possible to specify dynamic validation messages on programmatic filters defined over foreign key constraints.
See TableRefFilter.getValidationMessage
for more information.
A new method has been added to indicate if a validation report item is related to a constraint that has reached the threshold defined by the property ebx.validation.constraints.messages.threshold
in the EBX® main configuration file (ebx.properties
).
See ValidationReportItem.isValidationMessageThresholdItem
for more information.
The property ebx.validation.report.maxItemDisplayedInLogs
has been added to the EBX® main configuration file (ebx.properties
). It allows to specify the maximum number of validation items to display in the logs. By default this property is set to 100. See Backward compatibility for more information.
It is now possible to develop custom REST API using JAX-RS 2.1 annotations. A REST service operation is implemented by a Java method. The JSON media type is supported for the body content by using the Java API for JSON Binding (JSON-B) that can automatically map JSON to a Java type; for example a Data Transfer Object (DTO). Other media types are available, please refer to the documentation for more details. Extended components have been added to use the EBX® API:
annotations to describe resources or to grant REST anonymous access to a given EBX® resource;
injectable built-in objects that provide various useful APIs, for example to execute EBX® procedures on behalf of the current user or to build URLs without worrying about configuration (for example proxies or encoding);
logging and debugging utilities.
After upgrading an existing EBX® configuration, a new main logging category should be configured. See How to upgrade an installed environment for more information.
See REST Toolkit for more information.
The built-in RESTful services have been improved on the following topics:
Data operations | Improves the JSON meta data value type for See Content of simple type for more information. |
Paginated access | The pagination context has been updated to improve API performance. The URL for the The See Table parameters for more information. |
Authentication | When See Request header |
Token authentication | When using the EBX® default directory, the token creation prompts the user to change their password. The password change can be done through the new Change password operation. The token authentication method is now always supported and the EBX® property See |
Check | The request header 'Content-Type' is checked. See |
Logging | Some REST operation logs have been migrated to a more appropriate new main logging category, identified by the |
The REST select table operations have been improved for the pagination.
Permissions on user services have been added to the session cache scope. They provide enhanced responsiveness, especially on use cases where a lot of services are to be displayed.
This cache operates as before: it only takes user-defined permission rules into account, not programmatic rules (which are not cached since they are contextual and dynamic); and its life cycle depends on the context as described hereafter:
In the UI, the cache is cleared for every non-ajax event (i.e on page display, pop-up opening, etc.).
In programmatic procedures, the cache lasts until the end of the procedure, unless explicitly cleared (see below).
When modifying permissions in a procedure context (by importing an EBX® archive or merging a dataspace programmatically), the session cache must be cleared using Session.clearCache
. Otherwise, these modifications will not be reflected until the end of the procedure.
The data model publication process has been enhanced to detect modifications performed on primary key definitions in semantic tables. That is, a warning about the modifications performed on primary key definitions is now displayed when publishing a data model in the Data Model Assistant. Details of these modifications are displayed as well.
For more information about data model evolutions, see Data model evolutions.
In the Data Model Assistant, it is now possible to define several locations for the Java sources to be used in a data model.
See Data model properties for more information.
A new Java method has been added to retrieve the value of the osd:checkNullInput
property defined on a field.
See SchemaNode.isCheckNullInput
for more information.
SAP HANA® has been added as one of the supported database engines. Standard, enterprise, and express editions are supported for versions 2.0 and above.
It is now possible to fully migrate a repository from one database to another. The migration is automatic (it does not require technical intervention on the target database, aside from its global setup).
For more information, see Inter-database migration.
A new Java interface is available to anonymize a set of records in the history, according to a specified functional key.
For more information, see RepositoryAnonymizer
.
For mapped tables, it is now possible to programmatically rename a database column. The typical use case is when a schema type change creates a new column with an automatically suffixed name, such as 'name00'. While renaming was already possible through the UI, this new API allows automating the name change over several environments or many tables.
For more information, see DatabaseMapping
.
Getting the dataset reference | The new method |
System session on module registration | The new method |
Setting additional parameters to a Web Component | The new method |
| An EBX® module can now also be registered using the See Module registration for more information. |
D3 advanced setup | To perform the advanced setup of a D3 replica node, a new Java interface For example, when several inter-dependent broadcast dataspaces are used, implementing this interface allows to create the required D3 delivery dataspaces on the replica nodes. |
EBX® is packaged with its own third-party libraries with some new additions in this release. This simplifies the Java Runtime Environment 9 and above, and improves the application server installation.
Activation | The activation ( |
Annotations | The common annotations API ( |
JAX-RS | The CXF and JAX-RS API ( |
JSON | The Johnzon, JSON Processing API ( |
XML | The Bcel, JAXB ( The JVM option should be removed: |
Some of those third-party libraries may cause conflicts when deployed aside from ebx.jar
or included into custom web applications. See Embedded third-party libraries for more information.
In addition to the information provided in this release note, the document 5.9 Java API changes provides an exhaustive list of the Java API changes provided with this release.
The chapter Supported environments has been updated to reflect the necessary upgrades detailed below.
Browser support | Microsoft Internet Explorer 8 and 9 are no longer supported. For Mozilla Firefox, the support of ESR 52 has shifted to ESR 60. |
JVM support | Java Runtime Environment requirement is now JRE 8 or higher. |
Oracle Database support | Minimum supported version of Oracle Database is now 12c (but excluding 18c). |
PostgreSQL support | Minimum supported version of PostgreSQL is now 10. |
Microsoft SQL Server support | Minimum supported version of Microsoft SQL Server is now 2012 SP4. |
New behavior on server startup | To ensure that the EBX® repository is always consistent with the deployed EBX® modules on which it depends, the repository initialization process now waits endlessly for the registration of the expected modules. If an expected module is not deployed for any reason, it now must be declared as such in the new property See Declaring modules as undeployed for more information. A final consequence is that the previous property |
EBX® as a Web Component and iframes | In some circumstances, EBX® may add an internal To avoid this, it is recommended to: use use For more information, see the documentation for methods ebx_getContainerWindow() and ebx_ContentWindow(). For the same reason, a UIService called as a Web Component in javascript (XHR) will no longer work. Such hack may have been used to implement the upload service. Instead, it is highly recommended to use |
Color settings | The New Skin design also involves a redesign of the colors used to customize the user interface. Some color parameters have been deleted since they were no longer used. The colors used on tables have been reset to their default value so that users can enjoy the new design before customizing it. See Colors and themes for more information. |
No raw HTML in a workspace title and navigation pane | The workspace title and the navigation pane no longer allow raw HTML: a text containing HTML tags is now escaped. This includes text generated by classes implementing the interface In some cases, such as hierarchy views and the display of hierarchy nodes by implementing |
Java methods to set a home icon | With the New Skin graphical chart, if a record form has tabs, the main tab is no longer displayed with a home icon. As a consequence, the existing Java methods For more information, see |
Removal of locale declaration at the module level | Locales can no longer be declared at the module level. Instead, locales should be declared globally in the main configuration file. As a consequence, the elements For more information, see Adding a new locale. |
Built-in RESTful API | The JSON meta data value type for See Data operation for more information. |
REST forward authentication method | Web application deployment on See Web applications for more information. |
Workflow - Clear history of selected workflows | The purge process of history data has been improved in order to deal with larger volumes. It now consists of two distinct steps: the deletion of workflows and the deletion of remnant data. The first step works exactly like the previous 'clear from date' service, the only difference being that it only clears the 'Workflows' table in the history. The second step consists in executing the standard EBX® purge, so as to delete all remnants in the background. See How to clean workflow history for more information. |
Workflow - role controls when offering a work item | The behavior of the control of profiles when offering a work item has been modified: in the previous behavior, a single empty role (a role that does not contain any user) would lock the work item in an "error" state even though the list of profiles contains valid users. Now, when the list contains:
Whenever a role is empty, a warning is saved in workflow logs for debugging purposes. |
Using EBX® as a Web Component | When some entity parameters are missing, the web component may display an error. Previously, the web component would attempt to fill missing entity parameters based on the user's last visited dataspace. Specifying the "breadcrumb" feature using the layout parameters For more information, see Using TIBCO EBX® as a Web Component. |
Data validation | As a consequence of the bug fix #19375, the number of validation items displayed in the logs is now limited by default to 100. For more information, see Validation report logs. |
Data modeling | As a consequence of the bug fix #17372, the data model compilation is now stricter regarding dynamic facets. That is, to prevent unexpected errors when working on data, a compilation error is now raised when a dynamic facet targets a field under a list that is not an ancestor of the field holding the dynamic facet. For more information, see Dynamic constraints. |
Exit policy | Error redirection is now deprecated and may be ignored by EBX®. |
Strong encoding is no longer supported | Property Web access management tools must be configured to allow the following characters in URLs: |
XPath functions for validation search | It is no longer possible to use XPath functions for validation search ( |
Data model - button configuration in custom toolbar | In the configuration form of the Toolbar, the field 'Relief' has been removed. The relief configuration is now ignored and the buttons are flat. |
Buttons default relief is now 'FLAT' | To set a border on a button, the method |
In order to upgrade your version of EBX®, perform the following steps:
Back up your repository, including the RDBMS and the directory ebx.repository.directory
.
Replace the *.war
and ebx.jar
files on your application server.
Add the new required ebx-ui.war
file in your EAR or on your application server. See Java EE deployment for more information.
Add the new main logging category, in the ebx.properties
file ,with the ebx.log4j.category.log.restServices
property key. See Configuring the EBX® logs for more information.
If using the EBX® add-ons, make sure that the version of the add-ons is compatible with EBX® version 5.9 before upgrading. For the backward compatibility of the add-ons themselves, refer to the release note of each add-on.
Once an EBX® repository has been used with this version, using it with a previous version is not supported. Consequently, a backup must be created before upgrading, as described above, in order to maintain the possibility of downgrading later.
CP-21787 Upgrade Commons IO 2.5 library to version 2.11.0
CP-21831 Some UTF-8 characters are not supported.
Some UTF-8 characters encoded within 2 chars are not supported.
CP-22062 Supplementary Unicode characters are persisted incorrectly.
Unicode characters in range [ #x10000 - #x10FFFF]
are incorrectly split into two characters, when translated to the XML persistent format. This causes an error when later trying to read them from the database.
CP-22454 Inter-database migration from HANA fails
Migrating from HANA to any database fails with this message: Caused by: java.lang.IllegalArgumentException: Unsupported type: 2011
CP-22836 Memory leak when creating and removing a large number of integers.
CP-22893 Version v2.x of H2 database is not supported.
An error occurs with the message
org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "CONSTRAINTS" not found
CP-3087 [23461] UIBeans on fields of type "osd:password" are not imported when importing an XSD in the data modeler.
CP-21387 The value context is null in the ConstraintOnTable#toUserDocumentation method.
CP-21867 Property 'viewForAdvancedSelection' is duplicated if the default combo-box widget is overridden.
The property 'viewForAdvancedSelection' is duplicated when publishing a data model that defines a field overriding the built-in combox widget in combination with a combobox selector. This issue occurs only when importing such a data model, then republishing it.
CP-22362 On startup, data model compilation should wait for the end of initialization of registered addons modules.
CP-22527 The dropdown list displaying the library components should be sorted.
CP-22605 On PostgreSQL, error after fixing blocks containing invalid XML characters.
This message is displayed: "org.postgresql.util.PSQLException: ERROR: portal "C_xx" does not exist"
CP-23009 Association node is considered as a value function.
The method isValueFunction() is returning true for an association node. It should return false since an association does not define any computed value.
CP-20629 The documentation for RESTEncodingHelper
API is not clear.
CP-22368 The dataspace tree view is unavailable when a reverse proxy is activated.
When a reverse proxy is activated, the dataspace tree view is not displayed, and generates browser connection errors.
CP-22627 The REST built-in insert operation used for update must consider the 'byDelta' parameter.
The PUT update operation for a single record manages the 'byDelta' parameter, but this parameter has no effect when using the POST insert operation with 'updateOrInsert=true' parameter.
CP-2333 [28549] A newly created record is not displayed in the grid view of association.
In the grid view of an association element, when users create a new record, the record is not displayed. It should be automatically associated and displayed in this view.
CP-22125 Error when anonymizing foreign key fields in history.
CP-22134 Error when anonymizing lists in history.
CP-22284 D3 replica node throws IllegalStateException
when registering a broadcast trigger on startup.
The D3NodeAsSlaveOnStartup.registerBroadcastTrigger(AdaptationHome, Class<? extends D3ReceiveBroadcastTrigger>)
always throws IllegalStateException with message "This object is not in update mode.".
CP-22314 Forbidden to close snapshot, with no reason message.
When a snapshot corresponds to the current D3 snapshot for a delivery dataspace, the access permission is hidden and no reason message is displayed.
CP-22351D3Broadcast.getDeliveryModes()
returns an empty list if there is no registered replica.
Even if the delivery mode is defined in each delivery profile, an empty list is returned when the registered replica table is empty.
CP-22359 File i18n_xx.zip
of the 'ebx-manager' webapp is corrupted.
CP-22528 User interface is broken when reverse proxy is activated.
The user interface is broken when a reverse proxy is activated: the front-end and the back-end are in different http(s) protocols.
CP-23114 The value of property ebx.https.support
should be true
by default.
CP-21852 Upgrade JDOM 1.0 library to version 2.0.6.
CP-22983 JDOM 2.0.6 library should be upgraded to version 2.0.6.1
CP-21188 RequestUriFilter does not properly handle base URI definition according to built-in data services lineage and modules public path prefix property
When the _ebx.module.publicPath.prefix_
property and the built-in data services lineage are defined, their URI path value are concatenated resulting in wrong URI builds.
If no built-in data services lineage and no modules public path prefix are defined, then default values must be applied.
* server URI path: /
* built-in data services URI path: /ebx-dataservices
* base URI path: the one from the HTTP request
* request URI path: the one from the HTTP request
If no built-in data services lineage is defined but there is a modules public path prefix, then it must be considered:
* server URI path: modules public path prefix
* built-in data services URI path: modules public path prefix + /ebx-dataservices
* base URI path: modules public path prefix + partial base URI path which begin with the servlet name segment
* request URI path: modules public path prefix + partial request URI path which begin with the servlet name segment
If there is a built-in data services lineage, then it must be considered:
* server URI path: built-in data services lineage URI path minus the servlet name segment
* built-in data services URI path: built-in data services lineage URI path
* base URI path: server URI path + partial base URI path which begin with the servlet name segment
* request URI path: server URI path + partial request URI path which begin with the servlet name segment
CP-21779 REST Toolkit application throws NullPointerException during providers registration.
CP-18798 An error occurs when accessing history from an association targeting a table in another dataset.
CP-19653 In a paginated tabular view, the grid edit comes back to the first page.
In a paginated tabular view, when the user navigates several pages and clicks the grid edit option, the first page is displayed.
CP-19856 The page for selecting backed-up user does not display in some cases.
If the backed-up user feature is enabled in a custom directory, the page for selecting a backed-up user does not display when using either of:
* a custom login page,
* a URL with parameters: example: [http://localhost:8080/ebx/?login=testAdministrator&password=testAdministratorPassword]
* SSO
CP-21105 Encoding mismatch when enabling file upload for the form with UserServiceDisplayConfigurator
CP-21186 The 'Create' button is missing for association tables of newly-created records.
In case a record was created using the 'Create' button of a foreign key selector, some actions are temporarily missing from the toolbars of its association tables.
CP-21509 Some characters are converted to HTML entities in the breadcrumb.
In the row at the top of the record view, when displaying a record with a special character in its label, it gets displayed as an HTML tag.
CP-22041 The URL computing documentation must mention the data lineage configuration when using a reverse proxy.
When using a reverse proxy (particularly in https), it is necessary to configure the data lineage property. This should be mentioned in the URL computing configuration.
CP-22064 Erroneous scope of the comparison service in a workflow task.
CP-22130 An empty value for workflow action in ebx.properties hides "Data workflows" and "Workflow models"
As the default value for workflow activation is "true", the "Data workflows" and "Workflow models" categories should be available, even if this property is not set.
CP-22214 Error when calling UserTaskBeforeWorkItemCompletionContext.reportMessage
Clicking on the error should not have any effect, but in this case, it displays a blank page with an unexpected error.
CP-22295 Horizontal scrollbar is not displayed in the dataset view to select a dataspace.
CP-22349 [All browsers] A JavaScript error occurs when expanding a computation rule.
When users click on the "Expand" button on "Computation rule", a JavaScript error occurs.
CP-22453 The language selector is broken, when using Internet Explorer.
CP-22808 Upgrade third-party library CKEditor to version 4.17.1
CP-22898 Opening a work item can fail when a data context variable is too large.
CP-22899 A record is not automatically selected in the combo box after its creation through the 'Create' button of a foreign key's combo box.
This happens when the creation form is a user service declared by UserServiceRecordFormFactory#newUserServiceForCreate(ForCreate)
.
To overcome this issue, services returned by this method should implement the new API UserServiceForCreate
.
CP-1876 [29663] Unclear error when calling Session.isUserInRole()
with a null parameter.
Calling Session.isUserInRole()
with a null parameter leads to an unclear 'Unexpected error in request computation.' error. Error management in such a case should be improved.
CP-3935 [21388] A field with a default view defined as hidden should not be exported in CSV or XML exports.
CP-22354 Error in administration pane if some users have no password
CP-23096 A read-only user is able to edit the workflow diagram.
If a read-only user is set "Writer" permission on a workflow, he/she is still able to edit the workflow diagram.
CP-22130 Empty value for workflow action in ebx.properties hide "Data workflows" and "Workflow models"
As default value for workflow activation is true, the "Data workflows" and "Workflow models" categories should be available even if property is not set.
CP-21758 Error on inter-database migration for mapped table with field of type osd:dataspaceKey or osd:datasetName.
CP-21849 Poor performance of history queries when exporting or calling the REST 'select' operation.
CP-21856 The default constraint on primary key should be blocking for all operations.
A default pattern is defined on primary key fields if no other patterns are defined in the data model. This default constraint is checked in the user interface, and then blocks any erroneous value but is not blocking on some operations (e.g. during an import). Invalid values can be set during these operations but cannot be corrected.
This default pattern should be blocking for all operations.
CP-21791 An exception occurs when deleting a record that contains an inherited field.
A fatal error may appear in the dataset when deleting a record.
This issue occurs on tables that contain an inherited field that must be unique.
CP-22077 Control policy on enumerations is ignored when importing an XSD in the DMA.
The control policy set for enumerations is lost after importing a data model.
CP-21637 The generated WSDL for getChangesOnDataSet and replicationRefresh operations are incorrect for certain conditions.
The generated WSDL can contain invalid XML characters (such as space, slash or comma), if the model is packaged in a 'war' file and the webapp is deployed in 'unpack wars' mode. This case happens when the servlet container is unable to translate the given virtual path to a path of the data model.
CP-16707 Cannot access the history record of a merged dataspace.
From the table history view, when double-clicking a history record of a merged dataspace, an error message is displayed: 'No record found for the predicate [...]'.
CP-22018 The installation note for JBOSS EAP 7.1 specifies the use of an XA data source, instead of non-XA.
CP-21806 The error message on login is not user-friendly when using the default directory.
When using the EBX default directory, and login fails, the login page displays "HTTP error 401".
CP-21886 The warning 'Changes will be lost...' is not displayed in the presence of validation errors.
After submitting a form that raises a validation error, no warning that changes will be lost is displayed when quitting the form.
CP-20571 Method CfOccurrence.isDeleted
fails if the container table has been truncated.
CP-20828 A blank workspace is displayed when the 'Seniority (days)' field contains special characters.
In the 'Administration' area, when users create the 'Seniority (days)' field with special characters then re-access the 'Task scheduler' dataset, a blank page is displayed and an exception is thrown in the log file.
CP-20851 Modification of facet name should impact the FCT metadata table.
For a mapped field, when the name of a facet is changed (for example, from xs:length
to xs:maxLength
), the description of the facet is not updated in FCT. As a consequence, all following data model compilations detect a change and uselessly issue a DDL.
CP-20882 Inter-database migration fails if the source is SQL Server.
If the source is SQL Server, the inter-database migration fails while migrating sequences.
CP-21015 Poor performance of the workflow history purge when using a PostgreSQL database.
CP-21106 The number of historized tables with a similar name in a repository is limited to 256.
CP-21255 SqlChecker error with data models if they have circular dependencies, including one data model in error.
CP-5130 [18463] REST URL in operation response must better manage 'disableRedirectionToLastBroadcast' parameter.
When the request is applied on D3 dataspace.
1. If 'disableRedirectionToLastBroadcast' parameter is used in request, the URL in JSON response must propagate it.
2. If D3 redirection to a snapshot is activated, the URL in JSON response must keep the original dataspace parameter.
CP-20911 NPE occurs when a REST built-in service selects a history table with a foreign key field to a non-historized table.
A NullPointerException
occurs when a REST built-in service selects a history table that contains a foreign key field to a non-history table.
CP-21510 Error while fetching history with built-in REST service with a tableRef to a different dataset/dataspace.
The error "Specified context must be in the same data model as the field node holding this foreign key constraint" occurs while querying history, with a REST select operation for a table that contains a foreign key a to table belonging to a distinct dataset/dataspace.
CP-20706 Exporting data from an association with custom view should not export all fields from association table.
Considering an association link (definition: By foreign key) with a custom view: while exporting data from the associated table, all table columns are getting exported with the default column position. Usually, the export contains only the columns of the current view.
CP-2239 [31108] The data context variable standing for output parameter of validation service is not displayed.
After defining a data context variable for 'Output parameters' of the '[built-in] Validate a dataspace, a snapshot or a dataset' service, this variable is not displayed.
CP-19487 Error when using service extensions in perspectives.
When accessing service extensions in perspectives, we get the below error: Perspective action is badly configured: action 203 in perspective validation-overview
CP-19752 When using the 'Duplicate' service in a workflow user task, primary key fields that are also foreign keys are not editable.
CP-21390 Spelling error in a message for workflows.
The following French message for workflows contains some spelling errors :
Impossible d'ouvrir le bon de travail à cause d'une erreur inatendue. Veuillez contater votre administrateur.
It should be instead :
Impossible d'ouvrir le bon de travail à cause d'une erreur inattendue. Veuillez contacter votre administrateur.
CP-21011 Compilation errors when several threads concurrently access the history of a table.
On startup, for nodes of complex type, error messages appear, regarding compilation of history schemas.
CP-21433 Resetting all schemas can deadlock with D3 event notifications.
CP-20351 FactoryConfigurationError on WebSphere AS 9 on start-up
A FactoryConfigurationError occurs while trying to parse the JNDI entry for EBX_REPOSITORY
.
CP-3442 [27043] An exception occurs while importing some special characters, using the CSV built-in import.
CP-825 [37252] When setting the 'Node category' field to 'Hidden' for a table, under the 'Action' menu of an associated data set, 'Categories' is not shown.
CP-17343 An authentication error is not displayed correctly in the default login page.
When the authenticateUserFromLoginPassword()
method of a custom directory throws an AuthenticationException
, a "HTTP error 500" message is displayed in the page displayed to the user.
The message specified when creating in the AuthenticationException
should be displayed instead of the meaningless above message.
CP-20904 The authorization header is not correctly escaped
The authorization header contains unexpected characters, which may prevent the user from logging.
CP-21046 When closing a user service form, the user is not redirected to the right view.
When closing a user service form with the default 'Close' button, the user is not redirected to the right view.
This occurs when the record was opened from a work item that selects a custom hierarchical table view.
In that case, the user is redirected to the default view instead of the custom one.
CP-21192 Fatal error may occur when accessing a view.
Fatal error occurs when accessing a view, with a logged StackOverflowError
.
CP-21507 Avatar in header should be wider
Avatar size is too small; user initials are too close from avatar border.
CP-20392 ObjectAlreadyExistsException when registering a scheduler cron task, if it already exists.
An exception is thrown when a module registers several times a scheduler cron task with the same identification. A warn log should only be added.
CP-20546 An error can be silently dropped when executing an SQL request.
CP-20123 The auxiliary content of the data model is not reused, when creating a snapshot during the publication of an embedded data model.
Toolbars, entity mappings and services are not published when creating a snapshot during the publication of an embedded data model.
CP-20274 The XSD generated by the Data Model Assistant is not formatted.
The datamodel XSD file no longer has any tabs/spaces to make the XML human-readable.
CP-20109 XML Export is not formatted.
The exported XML misses tabs for formatting.
CP-20339 Fix the JMS section and improve JDBC section in the JBoss EAP 7.1.x installation note example.
In the JBoss EAP 7.1.x installation note example.
The JMS section is incorrect since the EBX_JMSConnectionFactory
is defined as a queue and should be specified in a <connection-factory>
element.
The JDBC section has been improved to specify sample as for PostgreSQL.
CP-20186 Too many SocketException
s due to browser connections management with Tomcat.
When the browser manages connections, it can close some of them. The server detects SocketException
with "broken pipe", "socket write error" message and logs in restService category of the EBX® server. For Tomcat server, it catches and rethrows the exception with org.apache.catalina.connector.ClientAbortException
.
CP-18601 The horizontal scroll bar is not displayed, in a form opened from a work item.
CP-19995 NPE when creating a record through a table reference declared by a BeanDefinition.
CP-20168 Textarea fields should not be limited to 1 million characters.
CP-20460 When a custom login page is implemented, the application locking page redirects to the login page.
When custom login page is implemented, application locking page is redirecting to standard login page.
The expected behavior is that the application locking page should redirect to the custom login page.
CP-20464 [IE11] 'Access denied' returned to a JavaScript function in a portal integration.
'Access denied' returned to a JavaScript function when using IE 11 in a portal integration.
CP-17052 An error occurs when building an XPath filter that uses a validation predicate.
An error occurs with a NullPointerException
when building an XPath filter that uses a validation predicate.
CP-19687 Filter on link table may disappear when creating a custom view.
When creating a custom view that specifies a filter on link table as a dimension criteria, the filter disappears after creating the view, saving then reopening.
CP-19973 A communication error in D3 federation broadcast is not detailed in console and log.
When a broadcast in federation mode is configured, if the communication with a replica node does not work, the stack information is not added to the D3 primary console and D3 log.
CP-18044 The shipped Apache Xerces library may lead to a StackOverflow error on custom code.
The shipped Apache Xerces library may lead to a StackOverflow error on custom code that validates an XML file. This issue must be fixed by upgrading the shipped Apache Xerces and Xalan libraries (plus any related libraries).
CP-20022 Global help URL may be invalid with some configurations.
The global help URL may be invalid when property ebx.module.publicPath.prefix
is set in file ebx.properties
.
CP-20025 The path of the cookie used by the EBX® help search is not set correctly.
The path of cookie ebx_BaseURLForDocSearch, which is used by the EBX® help search form, is usually set to '/'.
When more than one EBX® application is installed on the same host, this may cause cookies to conflict.
CP-18782 Mapped mode fails with the H2 1.4.200 database when a field name is a reserved word.
CP-18946 An error occurs when requesting the history of a table in all dataspaces.
CP-19491 Incorrect permission evaluation with REST built-in service, when updating a record from 'overwrite' to 'inherit'.
When changing the inheritance mode of an 'overwriting' record back to 'inherit', the permission to evaluate should be 'Delete a record' instead of 'Overwrite inherited record'.
CP-19503 Label and details URL for foreign key field are unavailable on REST history content.
When a user requests the history content through the REST built-in service, the label and URL of details for foreign key fields are unavailable. However, this information is displayed in the user interface.
CP-19254 A foreign key with a blocking constraint prevents from merging dataspace.
A foreign key referencing another dataset of the same dataspace prevents from merging if the 'blocksCommit' policy of the constraint is set to 'onInsertUpdateOrDelete'.
CP-19375 OutOfMemoryError if the validation report contains too many messages.
An OutOfMemoryError occurs when a dataset has too many messages, due to printing the validation report into the logs.
CP-19423 Blocking foreign key constraint during merge.
If the 'blocksCommit' property is set to 'onInsertUpdateOrDelete' on a foreign key field, then the merge operations may be blocked even if there are no errors on that foreign key.
CP-19561 Validation error appears in the record form, even for hidden fields.
Even when a field is hidden programmatically, the validation error displays in the record view
CP-19646 Bronken links in pdf documentation if the anchor contains a point character.
When an anchor contains the point ('.') character, the pdf link is incorrect. The product documentation contains 2 broken links.
CP-16694 When using UserServiceNext in a UserServiceExtended<DatasetEntitySelection>, the user is not redirected.
When using UserServiceNext
in a UserServiceExtended<DatasetEntitySelection>
, the user is not redirected.
CP-18404 Search with programmatic label on foreign key not working.
Searching with a programmatic label on a foreign key does not work, in the combo box component.
CP-18416 UILabelRendererForHierarchyContext.setDefaultLinkEnabled does not work.
The method UILabelRendererForHierarchyContext.setDefaultLinkEnabled(false)
does not disable the default preview link for hierarchy node.
CP-18766 When creating a record from a foreign key, the predicate filter is ignored.
When creating a record from a foreign key, the predicate filter is ignored.
The value of the nodes referenced by the predicate should be initialized
CP-18794 Performance issue with combo boxes, due to Ajax prevalidation.
When Ajax prevalidation updates are executing on a form, it prevents every combo box of the form from displaying; this leads to performance issues.
CP-18913 On completion of a workitem displayed in a root session web component, the user is redirected to the exit policy URL instead of the component redirection URL.
On completion of a workitem displayed in a root session web component, the user is redirected to the exit policy URL instead of the component redirection URL.
When no exit policy URL is defined, the user is correctly redirected to the component redirection URL.
CP-19006 A technical error occurs for a relative 'login URL' parameter, if 'useLocalUrl' is true.
A technical error occurs when accessing the default URL if the 'Login URL' parameter is set to a relative path, along with ebx.servlet.useLocalUrl=true
in ebx.properties.
CP-19089 [IE11] 'Access denied' returned to a JavaScript function in a portal integration.
'Access denied' returned to a JavaScript function when using IE 11 in a portal integration.
CP-19287 [Firefox] An alert box can be erroneously displayed when leaving the page.
An alert box can be displayed when leaving the page, whereas no modification was made to the current form.
It occurs on Firefox and from a record opened from a foreign key preview button.
CP-19310 A white screen is displayed when accessing a foreign key selector view.
A white screen is displayed, and a NullPointerException is thrown, when accessing a foreign key selector view.
CP-19332 Error when using relative path in addJS_*
methods in WidgetWriter
.
Using relative path in the class WidgetWriter
is not possible in this following methods:
* addJS_getNodeValue
* addJS_setNodeValue
* addJS_setNodeMandatoryIndicator
These methods should be able to detect if the input path has already been normalized. If not, the path must be normalized.
CP-19354 An error page is shown when application locking is enabled, and using SSO non-admin login.
An error occurs when application locking is enabled and a custom directory is used for SSO authentication by using RemoteUser
or UserPrincipal
in the method: com.orchestranetworks.service.directory.Directory#authenticateUserFromHttpRequest
.
CP-19376 Cannot set the 'mandatory' indicator for field, when using a custom widget on a record form.
On a simple record form (without custom UIForm
), if a custom widget is set to be displayed on a given field: in the widget, the method to set the 'mandatory' indicator does not work.
CP-19460 Browser does not spellcheck the content of HTML inputs.
HTML inputs are used for long texts, and the user might want to let the browser spellcheck such input.
An option should be added in administration, to enable spellcheck on HTML inputs.
CP-19669 Error when REST request contains an XPath predicate in the URI
When users request a GET method containing an XPath predicate, an error occurs.
CP-19329 Permissions for table view user services are not evaluated when displaying history.
Programmatic permissions for table view user services are not evaluated when displaying history.
CP-18785 REST built-in select operation with 'includeSortCriteria=true' parameter aborts.
The REST select operation aborts if the following conditions are all true:
'includeSortCriteria=true,' the 'sort' parameter is defined, and the pagination mecanism is activated.
CP-17469 EBX® becomes inaccessible when a redirection restriction is specified in the exit policy.
The application becomes inaccessible when a redirection restriction is specified in the exit policy.
It occurs when the property ebx.servlet.useLocalUrl
parameter of ebx.properties
is set to 'true'.
CP-18826 Fatal error on perspective navigation.
When moving a service from a dataset to another in the same dataspace via perspective actions, a fatal errors occurs.
[^StackTrace.txt]
CP-18935 Improve the CSRF token mechanism for better protection against CSRF attacks.
CP-18609 If the JavaMail jar is missing, an error message should explicitly state it.
When deployed on Tomcat, if the JavaMail jar is not installed, startup fails without relevant information.
CP-18677 Upgrade script to 5.7 assumes that the table name starts with the repository prefix.
If a repository has run on EBX® 5.0 to 5.2, and used history or relational tables, these have been created without a repository prefix. However, installation script TSA.6 - issued for upgrading a repository to 5.7 - assumes that the name of any relational table starts with the repository prefix. The upgrade to 5.7 fails with this message:[SqlChecker] Table EBX_MY_TABLE does not exist.
CP-18509 Validation messages on nested lists may not be displayed.
Field-level validation messages are not displayed when the field is part of a multivalued complex type that is itself under a complex type having the "Read & Write" access property.
CP-18527 Records can be duplicated, even when that action is forbidden on the data model.
Users set 'Duplicate record' on the table of a data model to 'Forbidden', but in the dataset, records can still be duplicated.
CP-18589 The REST forward should not be limited to use the built-in operations.
The REST dataservices introduction chapter mentions a REST forward authentication limitation. The limitation restricted to the built-in services is incorrect, it should be removed.
CP-18637 Mandatory message constraint not displayed for list types.
Multi-valued fields never display their mandatory message constraint.
CP-18690 Uniqueness constraint validation messages are not displayed in record form.
Uniqueness constraint messages at record-level are not displayed if the dataset is not validated.
CP-7201 [12927] An error occurs after creating a new 'User Defined Attribute' with Hidden/Read-only 'Type' field
In a data set, when the Type field of Catalog of User Defined Attributes table is Hidden or Read-only, the user can create a record without a 'Type' value into the 'Catalog of User Defined Attributes' table. After the user creates a record having a field with that type, an error occurs and an exception is thrown in the log file.
CP-18713 The 'Delete' button is misplaced in the case of an occurrence with an invalid multi-valued foreign key.
On a multi-valued foreign key: if users add an invalid occurrence, then submit the form, the 'Delete' button of that occurrence is misplaced.
CP-17629 The icon path for the workflow diagram should be relative.
The path for the icon is absolute and not relative. Thus, when testing in the cloud for example, the icon does not display correctly.
CP-18686 Event broker aborts on firing dataspace creation event, if the creation has aborted.
When a dataspace aborts on creation and if a subscriber has subscribed to the dataspace creation event, an exception is thrown.
CP-2203 [27189] A custom service is erroneously displayed in a group when defining a toolbar with a built-in service group.
A custom service is erroneously displayed in the last add-on service group when defining a toolbar with the built-in "Root custom services" group.
The subgroup name must appear in a specific part with all root custom services. If at least one add-on is activated, the addon submenu must appear in first position.
CP-16725 Icons missing after upgrading.
After upgrading to the new version, some icons do not display due to a caching issue.
Although it can be fixed by cleaning the browser cache, it is impractical.
CP-17813 In a programmatic record label, 'UILabelRendererContext.isHTMLForbidden()' never returns true.
In a programmatic record label, UILabelRendererContext.isHTMLForbidden()
never returns true.
CP-17911 HTTP parameters are lost when clicking on the preview button of a URL field that contains a permalink.
On table view, when clicking on the "Preview" button of a URL field that contains a permalink, HTTP parameters are lost and the user is redirected to the login page.
CP-17987 A dataspace user service that contains a dynamic object with a foreign key field fails when executed on a snapshot.
CP-18032 When the page becomes obsolete, clean the list of widgets kept in the session's page history.
CP-18166 A technical error occurs if a relative "login URL" parameter is defined.
A technical error occurs when accessing the default URL if the "Login URL" parameter is set to a relative path.
CP-18221 Incorrect display of table form row in inner tabbed panes.
When a tabbed pane is included in an other pane, the tab table form row is displayed in a div with an unnecessarily large width.
CP-18336 Unwanted consecutive slash characters in EBX® URLs.
Unwanted consecutives slash characters appear in EBX® URLs, leading to URLs being blocked by security tools.
CP-18505 The sub-page's name ("History" and "Duplicate") of a dataset disappears from the navigation pane when opening it twice.
When users open a sub-page (History/ Duplicate) twice on a dataset, the name of that page disappears from the navigation pane.
CP-18519 An error occurs when changing the locale in a workitem opened from a UserServiceExtended.
An error occurs when changing the locale in a workitem opened from a UserServiceExtended using UserServiceNext.nextWorkItem
.
The error only occurs if the service was launched in the context of a custom perspective.
CP-18521 Application locking does not work when connecting to EBX® with credentials as HTTP parameters.
CP-18643 Password field always causes a message prompt when leaving creation form.
This is the case even when the form is empty.
CP-18659 Widgets on boolean not seen as updated when updated via a TableTrigger.
The radio button group widget is not seen as updated in the GUI, when updated via a TableTrigger.
CP-18691 The 'system' user should be allowed to modify dataspace labels.
CP-18296 An exception occurs while renaming a mapped column under a group through the API.
CP-17835 The "Trim white spaces" property is not inherited from a simple data type.
When the "Trim white spaces" property is set to false on a simple data type, and a field reuses this type, this property is not inherited, even though it looks like it is in the DMA. Also, the property is still not considered when overloading the value.
CP-552 [36564] Error when using built-in REST service with filter by record label.
A NullPointerException occurs when using the built-in REST service to get table data with filter by predicates on a record label (osd:contains-record-label).
CP-1120 [36858] REST 'get history' returns an unexpected error when the table has locale 'zh-cn'.
When a record has the locale zh-cn, the REST call to get the history of a table returns an unexpected error.
CP-17747 Incomprehensible error message while inserting data using REST data services.
Such a message is returned as soon as there is a node under the table path in the base URI, which is related neither to the record primary key, nor to the technical primary key.
CP-17766 Predicates are not encoded when using the URIInfoUtility .
The predicate part of a resource URL must be encoded, if generated by the URIInfoUtility.
The bug is detected when generating historical data when serializing a ContentHolder.
CP-17881 Provide more detail when authentication is denied because of multiple methods in a REST request.
When a REST request is received with multiple authentication methods configured, only the message "Authentication failed" is returned. No information regarding the cause is provided, even in the log files at debug level.
A reason for the failed authentication should be given.
CP-18562 Property ebx.http.authorization.header.policy
should not impact basic authentication.
Currently setting ebx.http.authorization.header.policy
from file ebx.properties
impacts all authentication modes.
Standard "Basic" authentication mode then becomes incompatible with most REST clients.
This setting should only concern the 'Token Authentication Scheme'.
CP-17216 According to the documentation, the data context wizard should be available by default, but it is missing.
The context wizard is missing for scripts and user tasks.
CP-533 [35889] The sub-page's name ("Information" and "Permission") of a dataset disappears from the navigation pane when opening it twice.
When users open a sub-page (Information/ Permission) twice on a dataset, the name of that page disappears from the navigation pane.
CP-16524 Blank space appears when using a web component inside a tabbed pane.
A custom form that uses a tabbed pane with a tab displaying a web component will have its layout broken.
It appears as though its display shifted to top, leaving a blank space at the bottom.
CP-17115 Theme color for the selected item in the perspective navigation tree is not applied.
The theme color for the selected item in the perspective navigation tree is not applied.
CP-17622 Embedded Web Components modify the parent EBX® breadcrumb.
When a Web Component is embedded in another EBX®, it modifies its breadcrumb once loaded.
CP-17655 HTTP parameters are lost while accessing a permalink through a custom login page.
CP-17656 Permalinks generated through the GUI can be broken.
When a custom login page is declared, the permalink to access a record is broken.
[|http://localhost:8080/ebx/?instance=toto&xpath=%2Froot%2Ftable&branch=toto]
CP-17671 Erroneous date in a form due to the application server and the browser being on different time zones.
CP-17765 An error occurs in a user service whose form contains a submit button named 'submit'.
An error is displayed when executing a user service which contains a form with a submit button called 'submit'.
CP-17788 Table header icons should have light color on a dark background.
The background color and font color of the table header can be customized in the administration.
However, when the font color is "light", the icons of the table header do not change accordingly.
They remain grey, whereas they should be white.
CP-17853 The task name is erroneous after running service "Hide in the workflow progress view".
When users run the service "Hide in the workflow progress view", on the "Workflow model steps" screen, the task name is erroneous.
CP-17976 Within a user service, cannot select or close the foreign key selector in combo box.
The foreign key selector of a combo box, when used in a user service, seems to be broken.
CP-18282 It is not possible to enter a carriage return on a multi-line text field in grid-edit mode.
CP-18287 [Perspective] The "Perspective pane selected item" color is not working.
The color selected for "perspective pane selected item" option is not working. The default applied color is the one from "Main" option.
CP-18289 In grid edit, it is impossible to select edited cell text with keyboard.
In a standard form, user can select a text of a focused textarea by using SHIFT+LEFT/UP/RIGHT/BOTTOM. This cannot be achieved in grid edit.
CP-18397 Display subtabs on several lines in a custom form pane.
Display subtabs on several lines in a custom form pane when there are too many tabs to fit on a single line. It was the behaviour prior to EBX® versions 5.9.
CP-18465 The space around error page is not in accordance with the selected density
CP-17971 An exception occurs when a non-admin user modifies the label of a dataspace through the API.
An exception occurs when a non-admin user modifies the label of a dataspace through the API.
CP-18370 REST Toolkit returns HTTP error status 500 with a null body request.
The JSON parser aborts and returns a HTTP error status 500, when a request is sent, using POST method with a Content-Type
set to application/json
and a request body set to null
.
CP-17527 A deadlock may occur on startup on a JBoss EAP server.
When using a JBoss EAP server, a deadlock may occur on startup.
CP-16455 [37260] Unclear error message when an OperationException
is thrown during the "apply last modifications" action.
CP-2425 [28754] The method SchemaDocumentationContext.getSession
can return null
erroneously.
CP-17579ClassCastException
referencing field from an included schema in a computation rule.
ClassCastException
referencing field from DaqaMetadata in a computation rule.
CP-17593 Constraint on the "source location" field in the DMA should return a warning instead of an error.
CP-17491 Error at the data model compilation when inheriting a field from another data model.
An error occurs at the data model compilation when a field of the data model inherits from a field in another data model through 2 foreign keys.
CP-17541 The 'Display the message box' button is not shown upon the first time accessing a fatal dataset after publishing.
When users access a fatal dataset for the first time after publishing, the 'Display the message box' button is not displayed.
CP-17537 The message box is shown inappropriately when opening a deleted record.
When users open a deleted record, an error is shown. When opening the message box, an inappropriate message is displayed.
CP-17638 Custom module log threshold documentation is incorrect.
The property ebx.log4j.category.log.module.xxxxxx
defined in the main configuration file ebx.properties
should be ebx.log4j.category.log.wbp.xxxxxx
.
CP-17533 The UserMessage
JavaDoc is not fully compliant with the MessageFormat
pattern.
When using a UserMessage
the pattern syntax is not fully compliant with MessageFormat
as described in the documentation. For example, it is currently not possible to declare a format type and a style pattern to a format element.
CP-17631 An error occurs when the authorization header contains special characters.
An error that prevents the user from logging in occurs when the authorization header contains special characters.
CP-16733 Faulty display when trying to display an association widget several times in a UserService
.
CP-17545 Cross origin Javascript error.
When EBX® GUI is displayed in an IFrame, when the Iframe container is not in the same domain than EBX®, a cross origin Javascript error can occur.
CP-17536 An incorrect message is shown after running "Refresh data model" under 'Development tools' in the 'Administration' area.
When users run 'Refresh all data models'/'Refresh updated data models', an incorrect message is shown.
CP-878 [37123] The grid edit button on association tables is sometimes not displayed when it should be and inversely.
The grid edit button is not displayed after creating a record on an initially empty association table. Inversely, it is still displayed after deleting all records from the table.
CP-17561 An error appears when saving a record on a user service launched from a record that belongs to another table.
An error appears when saving a record on a user service launched from a record that belongs to another table.
The 'An error occurred while displaying field. Please contact your administrator.' message is displayed near a foreign key field when the user service page is closed.
CP-17540 The message under 'Display the message box' is misplaced when an error occurs on the 'Web Component link generator' preview.
When users open an erroneous preview in the 'Web component link generator' screen, the message under 'Display message box' is misplaced.
CP-17015 The session interaction is not valued in the AccessRule
execution.
CP-17392 When deploying EBX® over Weblogic, the Jersey library should be prevented from scanning REST Toolkit services.
When deploying EBX® over Weblogic, the Jersey library should be prevented from scanning REST Toolkit services.
Consequently, the scanning operation has to be disabled.
CP-16925 Unchecking a checkbox on a Boolean field sets the field value to null instead of false.
Unchecking a checkbox on a Boolean field sets the field value to null instead of false.
CP-17114 [IE10] The background color of the 'Confirm password' label displays incorrectly when creating a new user in the Users table under the Administration area.
On IE10, when creating a new user in the Users table of the Directory, under the Administration area, the background color of the 'Confirm password' label is displayed incorrectly.
CP-17313 [IE10] Cannot edit the user password, the button does not react to clicks.
On IE10, when the password is not empty, the user cannot click on the "Change password" button, nothing happens - as if the button was disabled.
CP-925 [36282] The number of messages in the message box accumulates when an error occurs.
The number of messages in the message box accumulates when users receive an error message in the Web component link generator.
CP-17339 The ActivationContext.setDisplayForLocations()
behavior needs to be clarified.
When calling the ActivationContext.setDisplayForLocations()
with the ActionDisplaySpec.HIDDEN_IN_DEFAULT_MENU
parameter without specifying any toolbar location, the user service is still displayed in the default menu.
As it could be expected that such a call could hide the service in that default menu, the current behavior must be clarified in order to avoid any misunderstanding.
CP-1247 [36231] Exceptions can occur while requesting data while customer modules are not fully compiled or have been unregistered.
Exceptions can occur while requesting data while customer modules are not fully compiled or have been unregistered.
CP-17156 An error occurs when publishing a data model declaring a replication with a name longer than 32 characters.
An error occurs when publishing a data model with a replication that has a key length greater than 32 characters. The max key length should be 64 characters.
CP-17227 HTTP Request Authentication scheme is performed even if a built-in authentication is tried.
During the authentication activation / deactivation feature development, a condition has been removed and must be added anew. If a built-in authentication scheme can be applied to the given request, then the HTTP Request Authentication scheme and the following anonymous authentication schemes must not be tried.
CP-17197 REST Toolkit: UnsupportedOperationException
error thrown when combining standard authentication, POST verb and application/x-www-form-urlencoded content-type.
An UnsupportedOperationException
error is thrown during the standard authentication process.
The exception is caused by a replacement of the provided password by an obfuscated one and it must be done for security reason.
CP-17273 Failure to deploy ebx-ui.war on weblogic 12c R2.
A MANIFEST.MF entry defining the ebx.jar where 'about' is not valued.
Without this value, the deployment of, at least, ebx-ui.war cannot be successful.
CP-17286 When a user has a favorite perspective, a display error occurs while accessing a perspective action with scope data.
CP-17270 Workspaces in sub-sessions with a scope greater than the node replace the root workspace.
If a web component with a scope data, dataset or dataspace is displayed in a workspace, then only the workspace content of this web component is displayed.
CP-1961 [31455] The default log file for a given category should not be created when the logs are redirected elsewhere.
CP-16910 The list of data model versions is empty if it has not been previously published.
The section that displays the versions of a data model is empty if the data model has not been previously published.
CP-16393 Lineage base URL makes EBX® inaccessible.
Lineage base URL makes \EBX® inaccessible.
CP-2063 [29780] A StackOverflowError
occurs when using a hierarchy view.
CP-16756 Performance issues while building a hierarchy tree.
New optimizations have been implemented in the hierarchy tree construction algorithm.
CP-17085 Stack overflow occurs while performing a 'Find in hierarchy'.
On a big tree, a stack overflow occurs while performing a 'Find in hierarchy'.
CP-16739 The filter is kept when switching between the custom perspective action and the advanced perspective.
The filter is kept when going from an inbox as a custom perspective action to the inbox in the advanced perspective.
CP-16932 When duplicating a record through an association, its primary foreign keys that target other tables are in read-only.
When duplicating a record through an association, its primary foreign keys that target other tables are in read-only. They should be in read-write instead.
CP-17000 An error occurs when accessing history from an association.
CP-17033 [IE][Edge] Unable to access a table content when the initial request contains a parameter whose value is very long.
The content of a table cannot be displayed if using the Microsoft Internet Explorer or Edge browsers when the initial request contains a HTTP parameter whose value is very long.
Nothing is displayed in the workspace pane.
CP-16632 Impossible to compute the size in a tabular view in some cases.
When the size of a tabular view on a large table is already computed, if the size becomes unknown - e.g. because a search criterion has changed - then the "Compute size" menu item is not displayed.
CP-16663 The user is logged-out after completing a work item opened in a Web Component from a filtered inbox view.
The user is logged-out after completing a work item opened in a Web Component from a filtered inbox view.
CP-16656 When using the link workflow.workItem.link.allocateAndStart
the user is not redirected to the work item when he does not have access to the advanced perspective.
When using the link workflow.workItem.link.allocateAndStart
the user is not redirected to the work item when he does not have access to the advanced perspective. He is instead redirected to the start page of a custom perspective.
CP-16850 Tracking information is not valued in the Access Rule
execution.
The tracking information declared in a workflow user task definition is null while building the navigation pane.
CP-16719 Performance issue while computing the list of services accessible in a toolbar when the add-ons are activated.
CP-17059 Under certain conditions a NPE can occur when selecting the dataspace tree.
When using the REST UI service on the dataspace version 1 for a tree operation, and under certain conditions, a NPE can occur when selecting the dataspace tree.
CP-17057 When a JSON body request is required but is not available, or the format is incorrect, a 500 HTTP status code is returned.
When no body request is sent by the client and a JSON body request is required, a 500 error is returned instead of a 400 bad request.
When a JSON body request with bad format is sent by client, a 500 error is returned instead of a 400 bad request.
CP-610 [36975] Impossible to compare 2 records if the table contains a data complex type with the "Access properties" as "Not a dataset node".
When comparing 2 records, if the table contains a data complex type which sets the "Access properties" to "Not a dataset node", then it does not work.
Thecompare service should work normally. The data complex type that does not have the permission should be hidden from the compare screen.
CP-16482 Comparing with filter isResolvedMode
returns a different result than from the Web.
In unresolved mode, the comparison result of two records by a workflow using a built-in service is different from the one using the public API DifferenceHelper.compareOccurrences(Adaptation, Adaptation, boolean)
.
CP-16560 In the compare service, the session is sometimes null when trying to retrieve it from a UILabelRenderer
.
In the compare service, the session is sometimes null when trying to retrieve itfrom a UILabelRenderer
.
Ithappens when the service is displaying the label of a record that has a foreign key referencing a table that usesthe UILabelRenderer
. The record contains that foreign key's label as part of its default label.
CP-16638 When setting a toolbar with isForTable=false
in a UserServiceDisplayConfigurator
, table-level services are offered instead of record-level services.
CP-1710 [32335] When a user who has no rights to share views duplicates a view, it is shared with the same profiles as the original view.
When a user who has no rights to share views duplicates a view, the view is shared with the same profiles as the original view.These users should not be able to share any view, even by duplicating a shared view.
CP-16514 A java.lang.StackOverflowError
occurs when creating a pruned hierarchy over a link table.
A java.lang.StackOverflowError
occurs when creating a pruned hierarchy with a filter onthe dependency link table.
CP-16670 A ClassCastException
occurs on a text search.
The error occurs if the search is performed on a table reference list which is itself contained in a list. Also, the error occurs only if a validation filter has been set and a validation has been performed.
CP-1000 [35068] A user is able to launch a workflow from a URL without the required permission.
A user is able to launch a workflow from a manually built URL without the required permission.
CP-571 [37210] The CSV export service must be optimized when enabling the user-friendly option.
The CSV export service performance must be optimized when enabling the user friendly option.
CP-1249 [36820] An error that occurs when deleting the temporary file for exporting may be silently dropped.
When there is an error when exporting data, if the temporary file deletion raises an error, the latter may be silently dropped.
CP-558 [35636] The preview link for an association table displayed in a user service fails with a blank screen.
The preview link for an association table displayed in a user service fails with a blank screen and a logged java.lang.NullPointerException
error. The latter occurs when this association is configured to be displayed in a modal in the data model.
CP-837 [36899] [LAYOUT][IE10] The 'Set as favorite perspective' icons are not aligned with the 'Select perspective' menu.
When users open the 'Select perspective' menu on IE10, the 'Set as favorite perspective' icons are not left-aligned as they are on other browsers.
CP-996 [36378] Clicking the search button on an association throws an exception when used within a user service.
CP-1055 [36391] An error occurs when performing actions on an association by an XPath predicate opened within a user service.
An error occurs with a NullPointerException
when performing actions on an association by an XPath predicate opened within a user service.
The error occurs:
- when using the "Delete" built-in service
- when using the "Create a record" built-in service and clicking on "Close" or "Save and Close" buttons
- when opening a record from the table and clicking on "Close" or "Save and Close" buttons
CP-1065 [35638] The associate or detach actions end with an error for an association displayed in a user service.
The associate or detach actions end with an error for an association over a link table displayed in a user service.
CP-1265 [36313] Accessing a dataset via a permalink in the node scope results in an erroneous empty page.
If there is a field at the root of the dataset, accessing it via a permalink in the node scope leads to an erroneous empty page.
CP-5429 [17579] If a hierarchy view is applied in a filtered foreign key selector, records that do not match the filter can be selected.
If a foreign key has a filter, when the user opens its selector and applies a recursive hierarchy view, then it is possible to select all the nodes of the hierarchy, including those that do not match the filter.
CP-16316 Null session in UILabelRenderer
when triggered from the comparison screen.
CP-16339 EBX® does not work if we specify the following parameter in ebx.properties in order to deploy the static resources on another server:port than the server:port of servlet.
EBX® does not work if we specify the following parameter in ebx.propertiesin order to deploy the static resources on another server:port than the server:port of the servlet:
ebx.externalResources.http.host=otherhost
.
CP-16342 EBX® does not work with the HTTP Servlet path parameter set in admin.
When the HTTP Servlet path parameter is set in admin configuration, EBX® doesn't work.
CP-16349 [35636] An error occurs when performing actions on the grid edit for an association by an XPath predicate in a user service.
An error occurs with a NullPointerException
when performing actions on grid edit for an association by an XPath predicate opened in a user service.
The error occurs when the user clicks on the "Close" or "Save and Close" buttons in the modal opened for grid edit.
CP-16379 Backed-up user page does not display when implemented in a custom directory.
When a custom directory is implemented and a user has one or more backed-up users, the backed-up user selector page does notdisplay after a successful login.
CP-16390 Record navigation arrows are only displayed for the records on the first page.
Record navigation arrows are only displayed for the records on the first page. They should also be displayed for records on the other pages.
CP-16401 The dataset selector does not open automatically.
When a dataspace is selected and more than one dataset can be selected, the dataset selector should open automatically.
CP-16447 The trackingInfo
value, when defined on a perspective action, is not available in the session.
The trackingInfo
value, when defined on a perspective action, is not available in the session. The getTrackingInfo()
method returns null.
CP-16471 State of selected records on custom perspectives is kept when switching to the advanced perspective.
Access built-in services to select more than one record on a custom perspective, then switch to the advanced perspective, the state of selected records is kept.
CP-16529 A user service 'Close action' does not work in a workflow user task.
The 'Close action' ofa user service does not work in a workflow user task: theresult screen contains only the workflow 'Comment' link and the 'Reject' and 'Accept' buttons.
CP-16580 A concurrency conflict happens when a record is updated through a trigger in the parent session.
A concurrency conflict happens when a record is updated through a trigger in the parent session.
Such an issue happens if the update is done in a child dataspace and if the record in the parent session is sharing its revision with its parent dataspace.
CP-16472 Job title updated for capitalization in the default directory.
There is no need to update the job titlefor capitalization in the directory. It leads to unwanted behaviors, ex: VP, Vp.
CP-879 [34239]osd:label
requests on non-labelled fields need to be optimized.
Requests such as osd:contains-case-insensitive(osd:label(./label),'ddd')
on a field (label) which is not a labelled field should be optimized.
CP-16281AdaptationTreeOptimizerSpec_RemoveDuplicates
fails to remove some records.
The deletions made by AdaptationTreeOptimizerSpec_RemoveDuplicates
may not be effective (and the optimization incomplete) when the modified record causes the persistence block to become unshared.
CP-796 [37026] The method SchemaNodeRelationships.getReverseRelationships()
returns duplicated relationships.
The method SchemaNodeRelationships.getReverseRelationships()
returns duplicated relationships involving inter-dataset relationships.
This issue occurs only if data models are published using the DMA.
CP-928 [36487] An error occurs on the 'Define criteria' page when attempting to add a criterion on an empty table.
When users add a criterion on the 'Define criteria' page of an empty table, a blank pop-up displays.
CP-1104 [36807] An error occurs when deleting a snapshot of a data model in the DMA.
When a user deletes a version on 'Manage version' of a data model, a white page is displayed. This issue occurs if the version to delete is a snapshot that is selected in the DMA.
CP-1175 [36996] Method ValueContext.getNode()
in a foreign key filter returns the wrong node when creating a record.
In the context of a foreign key filter, the method ValueContext.getNode()
returns the table node instead of the foreign key field when creating a record directly from an association.
CP-1426 [36389] The error message that indicates why the validation has stopped is inaccurate.
The error message that indicates why the validation has stopped reads "validation stopped because of too many errors" even if the severity of the concerned messages is not 'error'.
CP-612 [36910] It is not possible to occult a record in child datasets if this record does not comply with blocking constraints.
On a child dataset, it is not possible to occult a record that does not comply with blocking constraints. This issue occurs if the error management policy of an existing constraint is modified and set to blocking mode and if existing records have values that do not comply with this constraint.
CP-629 [35616] Without sufficient permissions on the advanced perspective, users cannot open a web component with the scope as a selected node.
A user without sufficient permissions on the advanced perspective (but who has permissions on other perspectives) cannot display a web component with the scope as a selected node.
Loading the advanced perspective causes a 404 HTTP error.
CP-16309 A blank workspace is displayed when accessing a table if its toolbar contains an invalid XPath.
When accessing a table in a dataset, a blank workspace is displayed and an exception occurs in the log file if the toolbar contains an invalid XPath value.
CP-860 [36558] Primary key violation error persisting data in the workflow history.
Primary key violation error persisting data in the workflow history when a work item is offered several times to the same profile.
CP-689 [36906] A fatal error occurs when importing an archive file into the dataspace.
On a dataspace which had some dataset deleted and then re-created, when users export an archive file with the 'The updates with their whole content' or 'The updates only' mode activated and import this file again, a fatal error occurs.
CP-981 [37125] Cluster broadcast aborts on the D3 replica node when the delivery dataspace exists but is not registered.
The broadcast aborts when it is realized from the D3 primary node, and if the delivery dataspace exists but is not registered from the D3 replica configuration.
CP-16419 EBX® does not start on Websphere Application Server 8.5.
EBX® does not start on Websphere Application Server 8.5 when using the Enterprise Application Archive shipped in the product package. Multiple ClassNotFoundException
errors are written in the application server log file.
CP-584 [36935] [All browsers] The warning message should not be shown when modifying a workflow diagram and double-clicking on 'Final step'.
Users open a diagram of a workflow and modify it then double click on 'Final step'. An unnecessary warning message is shown.
CP-606 [36956] Decrease spacing between the DateTime
field buttons.
The DateTime
field buttons take too much space in version 5.9.0 due to the new CSS style for buttons.
CP-622 [36647] Validation report disappears when the user clicks on "Revalidate".
When the validation report is opened and the user clicks on "Revalidate", the root node of the dataset is displayed instead of the validation report.
This only occurs when a dataset contains one or more fields at the "/root" node.
CP-651 [37212] An error is displayed in a perspective when trying to perform an 'access data' action on dataset-level fields.
CP-655 [36280] The 'Page not found' warning displays when using the 'Merge' service in the web component link generator.
On the 'Web component link generator' screen, when users select the 'Merge' service and a dataspace, the 'Page not found' warning displays when clicking the 'Preview' button for the first time.
CP-682 [35954] [All browsers] Some fields on the 'Web component link generator' should be reordered.
'Dataset node / Filter (XPath)', 'Scope', 'View publication' should be put under 'Dataspace' and 'Dataset' fields on 'Web component link generator'.
CP-720 [36784] In an association table, if the toolbar has no button on the left, then the right part is aligned to the left.
CP-725 [36970] The custom login page that is defined in 'Entry configuration' is not handled.
Defining a Custom login page through 'Entry configuration' is not supported.
In order to test this bug, first create a custom login page, then set the url of this page in "Administration/Advanced Perspective/Session Configuration/Entry Configuration" and save.
When an EBX® is launched in a new tab, the custom login page should be displayed.
CP-759 [35455] Defining a tabularView
element without any column
child leads to a broken page.
Defining for an association node a tabularView
element without any column
child leads to a broken page when opening a record in a table view. A java.lang.NullPointerException
error is additionally logged.
CP-768 [37006] JavaScript error (undefined table).
If a web component, with a full scope, is displayed in the workspace, an error occurs when the Exit policy equals "_parent", "_top" or "_blank".
CP-776 [36288] A wait icon appears when users 'Access data' using the 'Root session' option in the 'Web component link generator'.
A wait icon appears when users 'Access data' using the 'Root session' option without service parameters in the 'Web component link generator'.
CP-826 [37142] [All browsers] The "Add a criterion" field is displayed partially when opening the table filter pane.
The "Add a criterion" field is displayed partially when opening the table filter pane.
CP-828 [36370] [LAYOUT][IE10] The star icon is not aligned with others in perspective selection.
The star icon is not aligned with others in perspective selection on the IE 10 browser.
CP-845 [36472] The confirmation message does not pop up after generating Java.
CP-869 [37124] [IE10] The expand button of a sub-menu does not display.
The expand button of a sub-menu does not display.
CP-897 [34600] The 'Grid edit [@SncGridEdit]' service in a toolbar does not work.
When configuring the 'Grid edit [@SncGridEdit]' service in a toolbar (current context or specific context), there is no toolbar on the associated table.
CP-941 [34112] [LAYOUT] [IE] Some UI problems occur on the 'Create dataset' screen.
When users create a dataset using the Package data model, some UI problems occur.
CP-1112 [36920] An error message should be displayed when users access an EBX® instance by using a non-existent snapshot.
When users access an EBX® instance by using a non-existent snapshot via a permalink web component, an error message should be displayed.
CP-1158 [37057] A technical error occurs when using HTTPS with an erroneous web access configuration.
A technical error occurs when using HTTPS when this protocol support is disabled in the main configuration file.
CP-1266 [37058] The external resources configuration is erroneously used to redirect to the user interface module.
The external resources configuration (ebx.externalResources.http.path
or ebx.externalResources.https.path
, depending on the protocol used) is erroneously used to redirect to the user interface module.
CP-1405 [36854] Users should be redirected back to the Web component link generator page after the Merge process ends.
Users should be redirected back to the Web component link generator page after merging.
CP-16298 [All Browsers] The border of the 'Define your formula' pop-up is not in the correct color.
The border of the 'Formula' text box is both blue and red when users enter an invalid value into the text box.
CP-16310 Unexpected fields display when selecting the 'Workflow' service on the 'Web component link generator'.
On the 'Web component link generator', when users select the '[built-in] Workflow' service, 'Dataspace', 'Dataset' and 'Snapshot' are still displayed.
CP-16355 An unexpected error occurs on IE or Edge browsers when enabling single sign-on with a specific directory.
An unexpected error occurs with IE or Edge browsers when enabling a single sign-on with a specific directory.The "An unexpected error occurred during hybrid mode initialization" message is displayed in a dialog box.
CP-1447 [37237] Regression in the Directory API.
It is impossible to connect to EBX® with a UserReference
that would not be mapped to the login used on the login page.
CP-1998 [32114] While creating a record through an association, pre-filled fields should always be read-only.
While creating a record through an association based on a foreign key, the foreign key field is supposed to be pre-filled and read-only, if the foreign key is part of the record primary key, it is pre-filled but read-write.
[30784] Publishing a data model after enabling replication could result in a blank screen and prevent users from logging in.
Publishing a data model after enabling replication could result in a blank screen when the data model publication fails because an existing value for a string field in the replicated dataset is larger that the maximum length set for the field in the model.
A java.lang.NullPointerException
is logged and this error could prevent users from logging in.
[35837] Very long duration for the 'select all records' action from a hierarchy view.
When a user selects all records from a hierarchy view, and nodes are already collapsed, the process is very lengthy when the schema contains an AccessRule
on records and fields. If not, the duration is normal.
Note: when a user expands the hierarchy nodes and selects all records, the duration is normal.
[36912] Improve the API to offer a way to reload an add-on index under the protection of EBX® write-locks.
Add method AdaptationTableBridge.getAddonTableIndex(AdaptationTable, AddonTableIndexDefinition, boolean)
.
[36169] Validation reports remain in memory when closing the dataspace until the dataspace is deleted.
If the validation report is loaded in the Java cache using strong references, it remains in the Java cache until the dataspace deletion. As soon as the dataspace is closed, the strong references should be removed.
[36299] Calling the SchemaLocation.getFileOrNull()
method may lead to an error.
Calling the schemaLocation.getFileOrNull()
method may lead to a java.lang.NullPointerException
error.
[34544] [LAYOUT] The border shape of the Help icon on the 'Dataspace' field is wrong.
On the 'New dataset' page of the model publishing process, the border shape of the Help icon is square instead of a circle as the guideline specifies.
[34545] [LAYOUT] The background color of a parent button is not changed when creating a permission.
When creating a permission, the background color of a parent button is not changed if users focus on a field.
[34551] The 'Module name' and 'Path in module' fields are not red when an error occurs on them.
On the 'Include a data model' page, users save the record without defining any value on the 'Module name' and 'Path in module' fields, then the labels of the 'Module name' and 'Path in module' fields are not red.
[34559] [LAYOUT] The title is displayed on the modal when running the 'Export xsd' service.
The title is displayed on the modal when users run the 'Export xsd' service on a data model.
[36442] Incorrect data types are listed when creating a new field on the DMA.
On a data model with included data models, when creating a new field, under 'Data Type', when we switch from 'Included data models' to 'Current data model', the combo box still lists the types from 'Included data models'.
[36916] A validation message with a "fatal" severity is added when accessing a record with too many messages.
A validation message with a "fatal" severity is displayed in the validation report of a dataset when a user edits a record which contains too many validation messages.
This issue only occurs if the container table defines a constraint on a table with a record level check, and if the maximum number of validation messages is reached when this constraint checks the record.
[36511] Duplicated mandatory error message on a foreign key field.
Duplicated mandatory error message on a foreign key field when a specific constraint is declared on this field.
[34218] [All browser] The icon level node on a hierarchy view displays inconsistently.
When users create a hierarchy view, the icon level node shows an inconsistency between the titles and the record view.
[34988] A published view can be deleted from an HTTP request by any user.
A published view can be deleted from an HTTP request by any user, even if he is not the view owner.
[35345] A new record is not displayed after the 'Create a record toolbar' action if the target is a Web component.
When users create a record by using 'Create a record toolbar', on which the 'Target' is defined as a 'Web component', the created record is not automatically displayed in the table view.
[35364] [WRONG CONFIGURATION] The 'Merge view' toolbar still displays when its defined dataspace has been closed.
The 'Merge view' toolbar that uses 'Web component' as a target is still displayed although its defined dataspace has been closed.
[35550] A record on the table view is not updated when using the 'Access data [@default]' service of the toolbar.
From the table view, access a record by using the 'Access data [@default]' service of the toolbar, on which the 'Target' is set to 'Web component', then modify that record, it is not updated on the table view.
[36363] A blank page displays when pressing the 'Esc' button on a record view.
Users open a hierarchy node. On the record form, when pressing the 'Esc' button from the keyboard, an empty workspace is shown.
[36399] Hierarchy view dimension filter is not applied when the "Display non-matching children" option is activated.
[29782] When launching a dynamic sub-workflow invocation with no sub-workflow, the workflow is stuck waiting for a sub-workflow state.
When no sub-workflow is launched in a dynamic sub-workflow invocation, it goes to the next step without throwing an exception.
[34231] When running the 'Export as PNG/SVG' service on the workflow diagram, the exported file should be downloaded.
When users access the Workflow diagram service, then run 'Export as PNG/Export as SVG', the exported file should be downloaded.
[34770] The breadcrumb disappears after closing the comment pop-up in a workflow.
In a data workflow, when users accept a task which displays the breadcrumb, click on the comment button then close the comment pop-up, the breadcrumb disappears.
[34937] [LAYOUT] [All browsers] 'Specific icon url' overlaps the text box in the 'Create a new priority' screen.
In the 'Create a new priority' screen in Workflows under 'Administration', the 'Specific icon url' text overlaps the text box.
[36266] When a work item is opened, the associated breadcrumb item can be clicked, but nothing happens on click.
When a work item is opened, the associated breadcrumb item seems to be clickable, but nothing happens on click.
[36341] [Workflow model] A white page is displayed after exporting a PNG from the workflow diagram.
After the user clicks to export a PNG from the workflow diagram, a white page is displayed.
[36357] A white page is displayed after exporting an SVG from the workflow diagram.
After the user clicks to export an SVG from the workflow diagram, a white page is displayed.
[36037] The "restore from history" service fails with a blank screen when the data model contains a non-terminal group.
The "restore from history" function fails with a blank screen when the data model contains a group whose access properties parameter specifies it is a non-terminal node. A java.lang.NullPointerException
error is simultaneously logged.
[17573] Field value is reset in the aggregated list when using a UiBeanEditor
.
When disabling the edition with a UIBeanEditor
for a field that belongs to an aggregated list, the field value is set to null for the items of the list that follow the first modified one.
[32993] [All browsers] The border and error message of Dataspace key in the Data section disappear when focusing out.
When users leave blank Dataspace key in the Data section of Data service, then click on Next; a red border and an error message of the mandatory field Dataspace key in the Data section of Data service disappear when focusing out of this field.
[33051] [IE/Egde] Alignment issue occurs when opening a drop-down list.
Open any drop-down list of the test EBX® instance on IE and Edge browsers, an alignment issue occurs.
[33053] [LAYOUT] The field value and the Preview button are not horizontally aligned in a read-only foreign key field.
When opening a record, the Preview button and the foreign key value are not horizontally aligned in a foreign key field in read-only mode.
[34227]UILabelRenderer.displayLabel
is executed without session when executing a request.
UILabelRenderer.displayLabel
is executed without session when executing a request with an XPath filter such as osd:contains-case-insensitive(osd:label(./fk),'tryh')
where 'fk' is a foreign key referring to a labelled table, even in the case when setSession(..)
is called on the request.
[34302] The navigation pane is not properly synchronized after re-initializing the validation report of a dataset.
After users reinitialize the validation report of a dataset and click on a table in the navigation pane, then open the menu under the 'Actions' button, the 'view validation report' service is displayed instead of validation.
[34326] [LAYOUT][All browsers] A blank page displays when clicking on the Cancel button of an Export workflow task.
The message 'User logged out' is not displayed when clicking on the Cancel button of an Export workflow task.
[34432] [LAYOUT] The label of the group with an erroneous child is not properly colored.
When an error exists in a group, the label of the group is not colored with the proper color, as mentioned in the guidelines.
[34491] [IE] The Copy/Paste service under the Edit menu of the grid view displays incorrectly.
On browser IE, the Copy/Paste service under the Edit menu of the grid view displays incorrectly.
[34499] [All browsers] Avatar is not synchronized after being customized in the 'Ergonomics and layout' section under 'Administration'.
After customizing the field 'Avatar displayed in the header' in the 'Ergonomics and layout' section, the avatar is not synchronized.
[34621] [LAYOUT] The design of the 'Export'/'Import' archive page is erroneous.
When users run the 'Import'/'Export' archive on a dataspace or workflow model, the design of these pages are not compliant with the guidelines.
[34857] [All browser] The button allowing to switch from normal mode to reduced mode in a Perspective is not displayed.
The button allowing to switch from normal mode to reduced mode in a Perspective is not displayed.
[35201] [All browsers] The 'Logout' button displays when accessing an instance by using a permalink.
When users access an EBX® instance by using a permalink, the 'Logout' button displays in the top right corner of the EBX® instance.
[36555] An exception is logged as an error when the user's browser ends a connection.
An exception is logged as an error when the user's browser aborts a resource loading. An informative message in debug mode should be displayed instead.
[35209] When displaying a record, the label of the table should be clickable in the breadcrumb.
When displaying a record, its label in the breadcrumb is 'Table: Record'.
It should be possible to click on the 'Table' part to go back to the table if the context allows navigating to the table.
[35231] Group labels should be clickable.
Group labels should be clickable, not just the small arrow on the right.
Also, the entire line could be made clickable, rather than just the text.
[35291] [All browsers] [LAYOUT] The confirmation pop-up is not centered in the workspace when running 'Reinitialize validation report'.
The confirmation pop-up is too close to the right margin.
The confirmation pop-up should be at the center of the workspace after clicking on the 'Reinitialize validation report' button on the 'Validation report' screen on: Dataset/Data model/Workflow model/Administration.
[36810] An error occurs when calling add-on services if a website icon is defined on the perspective.
An error occurs when calling add-on services if a website icon is defined for the perspective. It is caused by a ClassCastException
.
[35719] The 'See comment' button does not work when changing a comment in the workflow task.
When entering or deleting a comment in an open task, the 'See comment' button does not automatically display or update the content.
[35831] The navigation pane displays incorrectly when creating a new record in the 'Access rights by profile' table of a dataset.
When users create a new record in the 'Access rights by profile' table of a dataset, 'Access rights by profile' is not shown under the navigation pane.
[35897] [IE][LAYOUT] An alignment problem occurs in the drop-down list of the 'Dataspace or snapshot' field when comparing dataspaces.
When users run the 'Compare' service under the 'Action' menu in the Dataspace area, the arrow icons are not aligned with the dataspace name in the drop-down list of the 'Dataspace or snapshot' field.
[36084] The menu in the navigation pane is not highlighted when accessing a perspective using a permalink.
When users access the perspective using a permalink, the selected item to be displayed is not highlighted in the perspective navigation pane.
[36166] [LAYOUT][All browsers] The text box displays incorrectly after setting the 'Character' unit in the widget of a field.
On a string field, users configure a widget text box and set the width to 'Character'. After users enter 100 zero numbers in this text box, the text box has a redundant whitespace.
[36202] [LAYOUT][All browsers] Large gap between the tag label and the tag input of the 'Edit publication' screen in a data model.
When users access the 'Edit publication' screen of a data model, the gap between the tag label and the tag input is too large.
[36218] [LAYOUT][All browsers] A modal with a form displays incorrectly after saving it.
On a modal with a form, after saving the form, the modal header and body are separated.
[36220] [All browsers] The work item's header displays incorrectly after saving a comment.
On a work item, users add a comment. After saving that comment, the work item's header is changed.
[36225] An empty pop-up displays when 'Create a dataset' is forbidden.
The button 'Select DataSet' should be replaced by a non-clickable button "see picture_5.8.1".
[36232] Custom scrollbars cannot be released over the workspace card when dragged.
Custom scrollbars cannot be released over the workspace card.
[36326] [LAYOUT][All browsers] The 'Close' button is missing when editing a workflow step under the diagram.
When users access a workflow step under the diagram, the 'Close' button is not displayed.
[36327] The tooltip is not displayed when hovering over the condition node of a workflow diagram.
When hovering over the condition node of a diagram, a tooltip is not displayed.
[36331] [LAYOUT][All browsers] The 'New record' window displays incorrectly on the navigation pane after closing a dataset sub-page.
The 'New record' window displays in the wrong area on the navigation pane when users create a new record after closing the 'Web component link generator' page.
[36369] When EBX® is configured to use no cookie, the display of a Web Component for the sub-session will fail.
When EBX® is configured to use no cookie, a URL will not display correctly.
[36340] [LAYOUT][IEs] Some UI problems occur on the 'Create dataset' screen.
When users create a dataset using the Package data model, some UI problems occur.
[36345] [LAYOUT] The confirmation dialog box does not comply with the guidelines.
The confirmation dialog box does not comply with the guidelines.
[36365] [All browsers] A JavaScript error occurs when pressing the 'Esc' button.
Users access a page of EBX® and press the 'Esc' button except for the preview of 'Web component link generator', a JavaScript error occurs.
[36377] [LAYOUT][All browsers] The horizontal scroll bar is missing when applying a simple tabular view which uses fixed columns.
Users first apply 'Fix the (maximum) columns' on a simple tabular view, then move all columns to the 'Displayed' pane and click on Apply. On the created view, if the table has no records, the horizontal scroll bar is missing and not a single column is shown.
[36387] [LAYOUT][All browsers] The 'Owner' field displays incorrectly on the 'Duplicate/ Create a dataset' page.
Users create/duplicate a dataset. On the 'Duplicate/ Create a dataset' page, if the system has a user with a long name, the 'Owner' field is enlarged on the right side.
[36402] [IE 10] The checkbox and radio button should comply with the guidelines.
On IE 10, the checkbox and radio button should comply with the guidelines.
[36560] [IE10][LAYOUT] An unexpected element displays on the 'Access denied' page.
When users have no perspective, an unexpected element displays on their 'Access denied' page.
[36562] [LAYOUT][IE] A UI problem occurs on the 'Input help' drop-down list on the create/update screen of the workflow item.
There are several UI problems when testing the 'Input help' drop-down list on the workflow item's create/update screen on IE10 and IE11.
[36617] Initials do not display if the directory is not the defaultDirectory
.
[36640] The width of the data navigation pane changes according to the length of the title of the dataspace.
[36679] A specific URL to replace the default login page is not considered.
When a specific directory is implemented, if the login page is replaced by a dedicated URL, it does not work.
[36729] The toolbar on the right side of a table is not displayed when the dataset has a long label.
When users access a table in a dataset that has a long label, the toolbar on the right side of a table such as View, Filter, Pagination is not displayed.
[4720] Default values on fields are ignored when a Java Bean is defined on ancestor fields.
When a user defines default values on simple fields, these are ignored at record creation if a parent node specifies a Java Bean.
[22306] Error when reducing the length of a primary key (or indexed) column on SQL Server.
On SQL Server, when reducing the length of a primary key column, IF the table contains no record exceeding this length, then EBX® will allow issuing the corresponding DDL. But SQL Server then produces the error: "The object 'EBX_HG_myTable_PK' is dependent on column 'pk'."
Note: Increasing the length of such a column does not cause an error.
[26111] Replication fails if a column name is identical to a reserved word with H2 Database 1.4.
[26651] The displayed association content is incomplete after creating a record (re-fix).
The displayed association content is incomplete after creating a record when a view is defined for the association and this view is first sorted by a boolean field in descending order.
[28605] The performance of 'View history' for a table should be improved.
Performance is degraded when viewing the history of tables with a few million records.
[28934]SqlChecker
false positive on primary key deletion.
SqlChecker
prevents the execution of a script that both creates a table defining its primary key and then tries to drop the primary key constraint.
This is because the primary key existence check in the previous operation only takes the primary key creation into account. It should also check that the generated script includes the operations in an appropriate order.
[29037] Improve the error message for the infinite cycle in inherited fields with no set field.
If the inheritance relationship defines a cycle in which no field is set, then an internal StackOverflowError
is thrown and the end-user does not receive a useful explanation.
[29161] Performance issues when accessing the record selector of a foreign key.
When accessing the record selector through a foreign key combo box, EBX® always computes the full size of the view whereas it is supposed to skip the computation if the request computation is too heavy. This is due to a bug in the computation statistics of the request.
[29188] The thread responsible for recording user preferences is stopped after startup.
[29316] Deleting a dataspace or snapshot is slow in SQL Server.
Deleting a dataspace or snapshot takes a long time on a large repository if the underlying database is SQL Server.
[29548] A deadlock can occur when starting EBX®.
[30222] EBX® does not start when using Java SE 9.
When using Java 9, EBX® fails to start with a PreconditionFailure
error.
[30359] Performance issue due to cache cleaning during dataspace deletion.
Deleting a dataspace can take several minutes due to slow cache cleaning.
[30441] When using SchemaFacetTableRef.getLinkedRecords(Adaptation)
, concurrent threads can interlock.
When using SchemaFacetTableRef.getLinkedRecords(Adaptation)
on two tables with recursive foreign keys in AddonTableIndex.loadIndex()
and inside a thread, this API hangs.
[30997] Releasing the connection used by the repository ownership check could fail if an error occurs during this operation.
[31347] The performance of RequestResult.isEmpty()
should be improved.
The isEmpty
method is called quite often, in particular for use cases that include the evaluation of permission rules, leading to poor performance. In many cases, the method triggers a query that needs to compute the full result, which can be costly especially if the tables are in relational mode.
[32012] If another JVM is running on the same database repository at server start-up, the repository should be shut down.
If another JVM is running on the database repository at server start-up, the repository should be shut down.
[32387] An exception upon schema compilation can lead to stale replicas in the database.
An exception upon schema compilation can lead to a desynchronization of the replicas if some tables of the data model are replicated.
[32492] A module generating ModuleDefinitionException
prevents access to the Manager.
When a module cannot register due to a ModuleDefinitionException
(e.g a service without a name), the UI cannot be accessed and a white page is displayed.
[32547] The SQL Checker should verify the naming of the constraints.
[32548] When renaming a table, all related objects should also be renamed (constraint, indexes, etc.).
[32590] The ThreadLocal
format cache for DateFormat
may be reset excessively.
The ThreadLocal
format cache for DateFormat
may be reset excessively, leading to poor performance.
[32921] An error occurs due to unprotected access to the HashMap
object.
A ConcurrentModificationException
occurs while copying a validation context due to unprotected access to the HashMap
object.
[32930] Avoid updating on-commit replication tables in some cases.
Replica tables should not be updated in the case where the updated fields are all disabled for replication.
[32931] Avoid updating all fields in the replica tables for on-commit replication.
Only fields which have actually been modified by a unit of work should be updated selectively.
[33375] Inappropriate error when updating a table while replication is activated.
EBX® detects that another thread is executing a procedure on the dataspace.
[33901] Optimizations regarding SQL requests on EBX_HV_TX_STAT
.
The overall performances of the application can be impacted by long SQL requests on EBX_HV_TX_STAT
, new indexes may be required.
[33912] "CASE" should be a reserved word for the H2 database policy.
H2 database accepts table creation with a column named "CASE" but this column cannot be queried by giving its name explicitly in a SELECT or WHERE clause. The statement fails with error:
org.h2.jdbc.JdbcSQLException
: Syntax error in SQL statement "SELECT CASE,[*] OP FROM JFBHG_TABLE201 "; expected "., WHEN, NOT, EXISTS, SELECT, FROM";
As a consequence, the test ReservedWordsForFieldNamesHistoryTest
should be more aggressive by inserting and retrieving records from the created history tables.
[33984] The exception thrown while closing the database connection is silently dropped.
The exception thrown while closing database connection is silently dropped.
[34388] "Table block does not exist in database" errors.
Due to a memory leak, the semantic cache can contain corrupted data that makes the cache unreadable.
[34534]SimpleDateFormat
unsafe for multi-threaded use.
DateFormats
are inherently unsafe for multi-threaded use.
[35069] The purge clean-up process does not clean up data from semantic tables.
[35796] Using fail-over, registered modules remain in "init" state after waking up the standby instance when using the Java API.
Using fail-over, registered modules remain in the "init" state after waking up the standby instance when using the Java API. This does not occur when waking via the HTTP request.
[35958] Custom indexes are not used when performing requests with ORs on an indexed field.
[36106] Unresponsive UI when setting sort criteria on a large table.
When setting sort criteria on a large table, the delay is very long, and no information is displayed in the UI: it might look like it is frozen.
[31191] The data model assistant displays the custom message input box for pattern constraint when only one locale is enabled.
The data model assistant displays the custom message input box for the pattern constraint when only one locale is enabled.
[32597] In the DMA, it is not possible to define custom programmatic constraints at the table-level in a relational data model.
In the DMA, it is not possible to define a programmatic constraint implementing ConstraintOnTable
in a relational data model.
[33962] The "day-from-date" function returns an incorrect value.
[33988] The "year-from-date" function has an incorrect type.
The type in the signature of the "year-from-date" function should be "Integer" instead of "String".
[34288] Labels display inconsistently between an association and a field in the data model.
After setting a label for an association and a field, the label is displayed correctly in the workspace for the field, but incorrectly for an association.
[34577] [LAYOUT][All browsers] An alignment problem occurs when users create/open a record on the 'User services' screen.
When users open/create a record on the 'User services' screen, the Boolean on the 'Confirm before launch' field is not aligned with other fields.
[35273] An error occurs when re-importing a packaged data model that includes another data model.
An error occurs when exporting and re-importing a packaged data model that includes another data model packaged in the same module. The error indicates that the included one cannot be found.
[27369] Updated records should not be considered if fields are declared as hidden in the default view.
When the "get changes" operation is applied to a table, if all updated fields are declared hidden in the data service, the record should not be written in the response.
[29008] Access forbidden for non-admins with 'systemInformation' SOAP or REST operations, even if declared in global permissions.
In the 'Global permissions', when a non-admin user has been given rights to access 'System information': using that non-admin user account to execute 'systemInformation' from SOAP or REST operations, the response always returns an 'access forbidden'.
[29801] Several authentication methods should be not authorized.
When several authentication methods are used from a SOAP or a REST request, it should not be authorized and an exception should be returned.
[30284] Calling Repository.createSessionFromSOAPHeader
can end in a java.lang.ClassCastException
.
Calling Repository.createSessionFromSOAPHeader
can raise a java.lang.ClassCastException
.
[31093] An error can occur if the predicate of the SOAP select operation is a number.
When a SOAP select operation is used with a predicate parameter that conforms to an expression but does not conform to a predicate expression, then a ClassCastException
is thrown.
[31333] Documentation is needed for the deletion of records that do no exist in SOAP.
An error can occur when executing a 'delete' operation on a record that does not exist and needs to be included in the documentation.
[32369] REST sort and filter parameters should not return a status code 500 even if an illegal syntax is used.
When invoking a REST select operation (data or history category) by using a sort
or filter
parameter value, especially when using an illegal syntax, the operation should not return an HTTP status code '500 Internal Error', but a '400 Bad Request'.
[33126] When a group contains only an association, the group level element is not present in the SOAP response.
When a group contains only an association, the group level element is not present in the SOAP response. The association values are directly under the table element.
[33272] REST forward throws a ServletException
for recent Tomcat versions.
When a user interface component uses REST forward to access the REST API, it aborts on recent Tomcat versions (Tomcat 7.0.55+, 8.0.10+, 8.5.x and 9.0.x).
[33871] The SOAP insert operation aborts if the record field name is equal to the table name.
A NullPointerException
error may occur when executing a data service SOAP operation when two nodes have the same name at different levels in the data model. This issue is also present in the XML table import.
[34168] An error occurs while executing a REST call from a manager component.
An error occurs while executing a REST call using the URL retrieved using UIResourceLocator.getURLForRest
in a sub-session context.
[35578] Missing documentation for REST "Meta-data" service property valueFunction
.
Missing documentation for REST "Meta-data" service property valueFunction
, pathInDataset
and history
.
[35740] REST authentication method 'Standard' failed if password is not defined in the request.
When a REST request is invoked with a 'Standard' authentication method on built-in or toolkit, and if the 'password' parameter is not defined, the response status is 500.
[3432] When validation threshold is reached for a constraint on a field, other constraints on the same field are not executed.
When the validation threshold is reached for a constraint on a given field, an error message is added to this field for every record of the table and other constraints on the same field are no longer executed.
The validation threshold should not have an impact on other constraints.
[12800] An association create or attach should consider the association filter.
It should not be possible to create or to associate a record through an association if the created record does not match the association filter (osd:association/xpathFilter
) or constraint (osd:association/constraint
).
[24218] Validation error messages raised by TableRefFilter
are disappearing when returning to the table view.
Validation error messages raised by TableRefFilter
while accessing a record are disappearing when returning to the table view.
[26378] There are redundant error messages when having more than 100 validation errors.
In the response of REST service for the case the dataset contains more than 100 messages, when getting the messages for each record by using API getValidationReport(), the error message "Validation stopped because of too many errors (above 100)." is always attached to each record and field.
[27632] When the validation message threshold is exceeded, all records of the table have an error icon.
When the number of error messages for a constraint is greater than the configured threshold (ebx.validation.constraints.messages.threshold
), all records of the table have an error icon.
[29837] A validation error remains in the validation report even after the correction and cannot be removed by validating again.
[30036] Performance issue when applying a validation filter to a table with record errors coming from a constraint on table.
Performance issue when applying a validation filter to a table with errors at the record level coming from a constraint on table.
[30428] A validation error remains in the validation report even after the correction when the threshold is reached.
[30653] Validating a table after correcting errors could lead to a fatal error.
Validating a table could lead to a fatal error. This could occur after errors, information and warning messages from previous validation reports have been removed.
[30853] Performance issues during validation due to the retrieval of the dataset activation state for each validated record.
[30900] Performance issues when validating an inherited dataset foreign keys.
When adding or deleting a new record in an inherited dataset, the incremental validation will search for records having a foreign key targeting the newly created or deleted record. Since the indexes are not present on foreign key fields with inheritance, the request response time is not optimized.
[31044] Uniqueness constraint violation message could still be erroneously displayed after the error correction.
[32162] Validation message threshold should be ignored when validating a record.
The validation message threshold is applied when validating a record. This property should be ignored and an up-to-date validation report should be computed when validating a record.
However, if the threshold has previously been reached by a constraint in a table, the validation of a record must not impact the validation report of the dataset.
[33146] A 'null' string in an enumeration is handled as an empty string.
[35422] Erroneous validation report when the validation threshold is reached.
[19375] OutOfMemoryError while getting the validation report.
[13283] Inconsistency of the collapse/expand state when filtering the search pane in a hierarchy view.
On the search pane, when filtering the 'Search and Validation' block, the result is collapsed when nodes are collapsing. However, the result is expanded when filtering using the Text search block.
After filtering the 'Search and Validation' block, the hierarchy keeps its collapse/expand state whereas, when filtering using the Text search, the hierarchy does not keep its collapse/expand state.
[17372] Unexpected error is displayed when checking the constraint of a field under a complex list.
This issue occurs on a field under a complex list which defines a constraint. After the user creates a record with the specified value for this field, an unexpected error displays.
[18249] While creating a record from a hierarchical view, it is not possible to get the foreign key value in a trigger method.
While creating a new record through the hierarchy 'create' action, the value of the foreign key is prefilled in the form.
However, it is not possible to retrieve that value in the method handleNewContext
of a TableTrigger
.
[28133] Applying the 'Search' filter to a dataset returns incorrect results.
After the user applies the 'Search' filter to a dataset with the 'contains' operator, the search result is erroneous.
[29236] In a web component specifying a predicate, the hierarchical view is not expanded to the records that match the predicate.
In a web component, if the selection specifies a predicate, the hierarchical view is not expanded to the records that match the predicate, although
the method UIHttpManagerComponent.setFirstCallDisplayHierarchyExpanded()
is called.
[30507] An error can occur when opening a hierarchy joint record in a manager component.
A NullPointerException
error can occur when opening a hierarchy joint record in a manager component.
[30966] Performance issues due to hierarchy views when the repository contains numerous dataspaces.
Performance issues can be experienced due to hierarchy views when the repository contains numerous dataspaces.
[31339] Sorting a filtered table on a foreign key field results in an error.
Sorting a table on a foreign key field in a filtered view results in an "error occurred while building the response" message. A related "unexpected error in request computation" can then be found in the log file.
[33856] Erroneous returned value when a custom filter is set on the view in an association context.
According to the Javadoc, the AssociationEntitySelection.getAllRecords()
method is supposed to return "all records for the association from the selected table". However, when a custom filter is applied to the association view (not the one declared in the association definition), it returns the filtered result.
[33863] Moving a record in an association context can throw an exception when a filter is defined on this association.
When a filter is set on an association, using the "@associationMove" user service on an associated record in the user interface can lead to an exception.
[28446] An error occurs when executing the action "Show in graphical view" on the initial transition.
On the workflow model steps page, an error occurs when executing the action "Show in graphical view" on the initial transition.
[28496] An error occurs when launching a parent workflow whose sub-workflow is missing a first step.
The model publication is too permissive: a parent model can be published even if it has sub-workflows that do not have a first step.
After launching, the parent workflow throws an error because it failed to handle the sub-workflow.
The publication of models containing sub-workflows that do not have a first step needs to be forbidden.
[28768] Incorrect button name in the workflow launchers actions when enabling quick launch in the workflow model configuration.
When users activate the quick launch in the 'Workflow model configuration', the 'Quick launch' button is not available in the 'Workflow launchers' actions.
[28968] The History purge parameters need to be logged.
In order to help with the diagnosis in case of problems, we need to log the purge parameters.
[29007] Inconsistent user task labels when creating it from the service menu and when creating a step from a condition.
In the workflow model, the label of a user task when selecting it from the service menu is 'User task with multiple work items', but when creating a step from a condition, the label is 'User task [Legacy mode]'.
[29354] Intermediate transaction commits are required during the workflow history purge.
[30417] Aggressive error when the role of a user task has no user.
If one of the role of a user task has no user, an OperationException
is created, which is too aggressive.
Indeed, even though we have one role which contains users, the workflow will launch an OperationException if at least one of the listed roles is empty.
The correct behavior is to offer the work item to the users available and ignore the empty roles.
If no users are found in all the "offered to" roles, then we throw an OperationException.
[32168] An error occurs while retrieving a SessionInteraction
.
A NullPointerException
can occur while retrieving a SessionInteraction
from the method WorkflowEngine.createOrOpenInteraction
.
It happens when the "service" input is missing from the interaction.
[33386] A workflow remains in an inconsistent state when a work item is accepted twice in a user task extension.
[30446] The 'All history' value is not selected by default on the 'Delete history of dataspaces recursively' screen.
Users first select a dataspace to delete history, then select 'History before' and click on the 'Cancel' button: this value is still displayed when users select another dataspace to delete history.
[31761] An error occurs on history tables after increasing the primary key fields maximum length.
An error occurs on history tables after increasing the primary key fields maximum length. This issue occurs when the table contains multi-valued fields.
[32497] The 'Merge information' field of a history record obtained through the Java API is empty.
The technical field merge_info
of a history record obtained by executing a Request
on a history table is always null
.
[29386] Search results and page index links are incorrect in reverse proxy mode.
The documentation search engine creates erroneous document links if the properties ebx.servlet.*
or ebx.externalResources.*
are not set to default.
[30980] Improve the WorkflowEngine.forceTerminationWithoutCleaning()
method in the Javadoc specifying restrictions.
The WorkflowEngine.forceTerminationWithoutCleaning()
works only to force termination of sub-workflows in order to wake up the the parent and to terminate the workflow in error. These restrictions must be specified more clearly in the Javadoc.
[32804] The documentation of the property inheritedFieldMode
in RESTful operations is incorrect.
In the inheritance paragraph of the RESTful operations, the description of the inheritedFieldMode
property is incorrect. It is the same as the description of the inheritanceMode
property.
[36319] The "Installation note for Tomcat 8.x" page displays an alert.
When accessing the documentation page "Installation note for Tomcat 8.x",
a JavaScript alert pop-up displays "SyntaxHighlighter Can't find brush for: bash".
This behavior is unexpected.
SyntaxHighlighter
should be updated to accept bash.
[30515] A java.lang.NullPointerException
can occur when importing an archive with dataset inheritance enabled.
A java.lang.NullPointerException
can occur when importing an archive with a changeset if the dataset inheritance is enabled. This error occurs when the archive contains a record update from overwritten to inherited in a child dataset.
[32197] Add-on subscription licensing is not supported.
[21728] The URL obtained from ServiceContext.getURLForViewSelection
does not give access to the published view.
[23841] The URL for ending a service is erroneous while calling a service from a toolbar on a row.
Instead of redirecting the user to the table view, the user is redirected to the record form view.
[27967] The "Merge" field is empty in the history record form.
[28916] Functions return an incorrect result when they are used by an XPath filter.
Functions return an incorrect result when they are used by an XPath filter. For example: 'Predicates on record label'.
In a foreign key with a filter defined, the values are filtered correctly but an error message is displayed when the user saves the form.
[29106] The sort criteria is ignored when using a TableRefDisplay
.
The sort criteria is ignored when using a TableRefDisplay
. The foreign key values are sorted depending on their labels.
[29226] The initialize()
method is not called when displaying a user service on an association entity selection.
The initialize()
method is not called when displaying a user service in the context of an association.
[29285] An exception occurs when opening a dataset field under a multi-value group.
In a multi-value group containing a dataspace field and a dataset field, if the value of the dataset field is filled by the dataspace field, an exception is raised when opening the dataset field.
[29312] The record label is erroneous when it contains a dataspace field.
When the record label contains a dataspace field, the record label displays incorrectly.
[29349] Root sessions are created due to a malformed Ajax request when working with the expand/collapse block in a user service.
[30040] The perspective default selection is not taken into account after logging in.
The perspective default action is not selected after accessing the perspective straight after the login page.
[30133] Some values in an aggregated list can be lost when saving a form after correcting a blocking error in the list.
[30620] When using the Grid Edit, warnings and information messages are treated as blocking errors.
When using the Grid Edit, warnings and information messages are treated as blocking errors and prevent updates from being applied.
[30894] The first tab should always be selected when opening a record.
When opening a record, the tab that was last selected when viewing the previous record is displayed instead of the first one.
[31113] Implementing a dataspace user service without display leads to a "service does not exist in the request" error.
[31353] The initialize()
method is not called when the user service is launched from a JavaScript button.
The method initialize()
is not called with an extended user service launched from a JavaScript button.
[31363] An error occurs when executing a dataspace level module service using UIHTTPManagerComponent
in a form.
An error occurs when executing a dataspace level module service using a UIHTTPManagerComponent
inside a UIForm
.
This issue only appears when there is only one dataset in the dataspace.
[31599] Performance is degraded on tables that contain a large number of columns and foreign keys.
[31851] The initialize()
method is not called when running a user service from a perspective action.
The initialize()
method is not called when running a user service from a perspective.
[32280] Included JavaScript or CSS resources should be ordered by their module's nature and name.
When an HTML page is generated, the JavaScript and CSS resources should be in the following order: core modules first, then add-on modules, and finally specific modules.
[33613]UIHTTPManagerComponent.getURIToMyProfileWithParameters
erroneously appears in the Javadoc.
UIHTTPManagerComponent.getURIToMyProfileWithParameters
is not a public API method and should not be in the Javadoc.
[33712] A message added by ebx_form_setNodeMessage
may not remain displayed.
If the JavaScript method ebx_form_setNodeMessage
is triggered after the user has changed the value of the component (UIAtomicWidget.setActionOnAfterValueChanged
), the added message disappears when loosing the focus from the component if the click is slow.
[33753] Parent record is not updated while updating a record through a trigger on an associated table.
In a UI form containing an association, if the end user modifies associated objects (create, update, delete), a trigger modifies a field value in the parent object.
Then the value in the parent form is supposed to be updated, it is not untill you click on "revert".
[34931] The initialize()
method is not called when displaying a user service as a Web component.
The initialize()
method is not called when displaying a user service in the context of a Web component.
[36183] [All browsers] The '...' icon is not shown in the drop-down list of a foreign key field that has a specified 'Page size'.
When users set a value for the 'Page size' field in the 'Parameter' tab of a foreign key widget, the '...' icon is not displayed when opening the drop-down list.
[36204] The perspective menu tree is not opened up to the default perspective action.
When accessing a perspective with a default action set, the perspective menu tree is not opened up to the default perspective action when this action is a group child.
[31231] When executing the built-in "duplicate" service in a user task, the primary key of the record to create is read-only.
When executing the built-in "duplicate" service in a user task, the primary key of the record to create is read-only. It should be writable, otherwise, it is impossible to create a record.
[31446] Login and password are trimmed while connecting through the EBX® login page.
When connecting to EBX®, users who have a space character at the start or end of their password can't log on. The string is trimmed prior to being sent to the directory implementation.
[31500] Method TableViewEntitySelection.getselectedRecords
should never return null, as mentioned in the Javadoc.
In a UserServicePermissionRule
, when no record is selected, the returned request is null.
[31528] A service rule on "tableView" set by setServicePermissionRuleOnNode
should apply to single record contexts.
As mentioned in the Javadoc of the method SchemaExtensions.setServicePermissionRuleOnNode
, setting a ServicePermissionRule<TableViewEntitySelection>
on a table node should also make that rule apply to single record contexts such as the record form.
[31670]Directory.isUserInRole()
is erroneously called with Profile.OWNER
when viewing a dataspace.
The Directory.isUserInRole()
method is erroneously called with the Profile.OWNER
role as parameter when viewing a dataspace in contradiction with the Javadoc method statements.
[31703]TableViewEntitySelection.getFilteredRecords
returns a wrong request for an association inline display.
TableViewEntitySelection.getFilteredRecords
returns a wrong request for an association inline display. This request does not filter the records according to the defined association.
[31914] Disabling the 'create' service still allows the creation of a record via the foreign key combo box.
Disabling the 'create' service globally via a UI permission or with a ServicePermissionRule
for a table still allows the creation of a record from a foreign key on that table.
[32147] In a ServicePermissionRule
, the context can be erroneous when the service is called from a table.
In a ServicePermissionRule<RecordEntitySelection>
, the getRecord()
method should always return null
when the user service is called for display in a table view. However, when a record is selected in a table view, the selected record is actually returned.
[32710] Service permission rules on DELETE services are ineffective when deleting from an association.
[32851] Performance issues while launching a legacy user service on a record with a ServicePermission
.
When many records are selected, performance is strongly degraded when launching a legacy user service with a ServicePermission
.
[33042] Unable to use the "associate" action due to an erroneous resolution of permissions.
The association is based on an inverse foreign key, the foreign key is writable, other fields of the associated table are read-only, the "associate" action is not proposed in the "action" combo-box.
[33527] Performance issues while launching a user service when using a complex filter.
When using a complex filter in a table view and after selecting many records, launching a user service can be very slow.
[33869] When a toolbar is declared on rows, the service permissions on datasets should not be evaluated for each record.
The static permissions declared at the dataset level are evaluated for each row of the view, this leads to performance issues when several custom services buttons are declared in the toolbar.