Changelogs
9.0.2
Release Date: 2025-12-22
Breaking Changes
|
A breaking change may require manual adjustments by the administrator. Please read the description. |
INUBIT-20335
For BPC portal integration, the BPC API key must now be entered manually in INUBIT (e.g., via copy/paste).
Breaking Change
Previously, the BPC API key could be automatically created, retrieved, and saved via the INUBIT portal server configuration. This is no longer possible with BPC 5.0. The API key must now be manually created in BPC and transferred to INUBIT.
Impacts:
INUBIT-21105
Due to the change in the underlying technical REST framework, the "Allow fallback to insecure trust manager" option is no longer selectable independently. This option is now only selectable if the "Allow fallback to insecure hostname verification" option is enabled.
Breaking Change
The following module configurations can no longer be applied as before:
-
Enabled: "Allow fallback to insecure trust manager"
-
Disabled: "Allow fallback to insecure hostname verification"
Incorrectly configured modules may fail during execution and must then be manually adjusted.
Temporary Workaround
Both fallback options can be enabled using the -Dfeature.enable.restconnector.insecure.fallback=true switch in the Process Engine startup script. This also enables the option for insecure hostnames. Use this switch only in exceptional cases.
We recommend using secure connections that do not require any kind of fallback.
Impacts:
INUBIT-21431
BPC 5.0 no longer supports INUBIT as an identity provider. This feature has therefore been removed from INUBIT.
Breaking Change
It is no longer possible to configure a BPC identity provider in the INUBIT portal configuration. This must now be done directly in BPC.
Impacts:
-
Portal - General
INUBIT-21894
With the switch to JDK 21, direct Java calls from XSLT scripts may no longer work and must be adjusted.
Breaking Change
This change in behavior is due to the transition from JDK 17 to JDK 21 and the associated changes or removal of Java classes.
Saxon itself forwards Java calls directly to the JDK and does not ensure compatibility. This is the responsibility of the caller from the XSLT script.
Example:
With JDK 21, the Thread class was extended and a new method, sleep(Duration), was added.
Previously (JDK 17):
Calls to java:java.lang.Thread.sleep(1000) were successfully executed by the JDK.
The Thread class contains only one method, sleep, which expects a value of type long as a parameter.
New (JDK 21):
Calls to java:java.lang.Thread.sleep(1000) fail.
The Thread class now contains two sleep methods, and the JDK doesn’t know which one to call.
Solution:
The call to the Sleep method must now be typed: java:java.lang.Thread.sleep(xs:long(1000))
Impacts:
Security Fixes
|
Security fixes include the remediation of security-related vulnerabilities. In addition to INUBIT’s own code, this also includes updating and replacing third-party components used. |
New Functionalities - Improvements
INUBIT-20401, SUPPORT-13468
INUBIT now supports the PostgreSQL database 17.
Impacts:
-
Application - Process Engine
-
Workbench - DB Explorer
-
Workbench - DB Manager
INUBIT-21737
The INUBIT product now supports the PostgreSQL database version 18.
Impacts:
-
Application - Process Engine
-
Workbench - DB Explorer
-
Workbench - DB Manager
INUBIT-5894, SUPPORT-14727, SUPPORT-3097, SUPPORT-6436
The INUBIT IS Connector now supports returning variables. Update both the source and target INUBIT systems.
Using the new "Variable Handling" option, a calling connector can receive variables and output them to the workflow.
Impacts:
INUBIT-9762
The initial sizes in the Workbench have been realigned. The splitters on the Designer and Module Editor tabs are now better positioned, so direct manual readjustment is no longer necessary.
Impacts:
-
Designer - General
INUBIT-11418
The UN/EDIFACT versions D21B to D24A are now available in the EDI rules editor.
Impacts:
INUBIT-14839, SUPPORT-13467, SUPPORT-8776
A new option “Safe writing” for Samba protocol has been introduced. Files can be tranferred safely onto a remote location so it can be fetched from there by another process but without any clashes of writing process and the other reading process.
Impacts:
INUBIT-16062
The OSCI Connector plugin has been removed. Older modules of this type can no longer be used after import or deployment.
Impacts:
-
Connector - OSCI
INUBIT-17195, SUPPORT-10787
To improve the visibility of information about the currently logged-in user, the status bar returns and displays the information familiar from INUBIT 7.4. The popup behind the info button has been removed, as all information is now visible in the status bar. The garbage collector for the Workbench can also be accessed there.
Impacts:
-
Application - Workbench
INUBIT-19500
The INUBIT product now runs on JDK 21. The corresponding JDK is provided with the installer.
Impacts:
-
Application - Process Engine
-
Application - Workbench
INUBIT-20335
For BPC portal integration, the BPC API key must now be entered manually in INUBIT (e.g., via copy/paste).
Breaking Change
Previously, the BPC API key could be automatically created, retrieved, and saved via the INUBIT portal server configuration. This is no longer possible with BPC 5.0. The API key must now be manually created in BPC and transferred to INUBIT.
Impacts:
INUBIT-20587
The Workbench now offers an AI assistant that answers questions based on the INUBIT documentation.
Impacts:
-
Application - Workbench
INUBIT-21187
The Mail Connector now supports security checks, which are displayed in the Security Cockpit.
Impacts:
-
Component - Security Cockpit
INUBIT-21216
If data on an INUBIT is backed up with an external identity provider, this data can now be successfully restored or migrated to an INUBIT where these users do not exist in the external identity provider.
Impacts:
-
Component - Repository
INUBIT-21238
The connector now supports security checks, which are displayed in the Security Cockpit.
Impacts:
-
Component - Security Cockpit
INUBIT-21431
BPC 5.0 no longer supports INUBIT as an identity provider. This feature has therefore been removed from INUBIT.
Breaking Change
It is no longer possible to configure a BPC identity provider in the INUBIT portal configuration. This must now be done directly in BPC.
Impacts:
-
Portal - General
INUBIT-21570
The installer now provides the new Virtimo product "Virtimo Suite". The images in the installer have been updated accordingly.
Impacts:
INUBIT-21894
With the switch to JDK 21, direct Java calls from XSLT scripts may no longer work and must be adjusted.
Breaking Change
This change in behavior is due to the transition from JDK 17 to JDK 21 and the associated changes or removal of Java classes.
Saxon itself forwards Java calls directly to the JDK and does not ensure compatibility. This is the responsibility of the caller from the XSLT script.
Example:
With JDK 21, the Thread class was extended and a new method, sleep(Duration), was added.
Previously (JDK 17):
Calls to java:java.lang.Thread.sleep(1000) were successfully executed by the JDK.
The Thread class contains only one method, sleep, which expects a value of type long as a parameter.
New (JDK 21):
Calls to java:java.lang.Thread.sleep(1000) fail.
The Thread class now contains two sleep methods, and the JDK doesn’t know which one to call.
Solution:
The call to the Sleep method must now be typed: java:java.lang.Thread.sleep(xs:long(1000))
Impacts:
INUBIT-21906
The INUBIT REST API now provides its content as OpenAPI Spec v3. It can also be used and searched via the Swagger UI. The endpoints are accessible anonymously. Therefore, this feature is disabled by default.
The endpoints are anonymously accessible. To activate, set the switch in the setenv.sh file to "true":
# -Dfeature.enable.openapi.support provides REST API definition as OpenAPISpec JSON as well as Swagger UI
# Enable this feature with care as the API information is accessible anonymously
JVM_PARAMS="$JVM_PARAMS -Dfeature.enable.openapi.support=false"
After activation, the following additional endpoints are available:
-
Swagger UI: \http(s)://<hostname>:<port>/ibis/swagger-ui/index.html
-
OpenAPI Spec: \http(s):\\<hostname>:<port>/ibis/v3/api-docs
Impacts:
INUBIT-21963
Support for INUBIT as an Identity Provider for BPC has been removed from the BPC Workflow package.
Impacts:
-
BPC - Technical Workflow Package
INUBIT-21988
The BPC Database Flex Table module is now also delivered with the installer.
Impacts:
-
BPC - General
Bug Fixes
INUBIT-18796
The central proxy settings in INUBIT are now also used by the IGUASU connector to establish the connection.
Impacts:
INUBIT-21869
A bug in the tagging process for workflows has been fixed. Previously, tagging would fail if chart modules couldn’t be found. The process is now more robust and completes the tagging as far as possible.
We are also working on providing a report that details all tagged and untagged resources.
Impacts:
-
Application - Process Engine
INUBIT-22056, SUPPORT-14727
When using an IS Connector in a sub-workflow, the variables necessary for returning to the main workflow were lost in version 8.1.11.
This issue has now been resolved, and both the Workflow Connector and the INUBIT IS Connector are working together again without any problems.
Impacts:
INUBIT-22210
During the transfer of XML variables, they were incorrectly imported as type String at the destination. This problem has now been fixed, and the typing is working as intended.
Impacts:
INUBIT-17040, SUPPORT-12709
An issue with importing workflows and modules has been fixed so that their status "active" or "inactive" is now always set as selected in the import wizard after the import is complete.
Impacts:
-
Workbench - Import / Export / Deployment
INUBIT-20965, SUPPORT-12733
The number of calls to the ISPN_USER table during workflow execution has been reduced when logging is set to level "Error", "Warning" or "Info".
Impacts:
-
Component - Cache
INUBIT-21531, SUPPORT-13682
When accessing a NetApp share using a VFS connector and a path with a wildcard (*), subdirectories were deleted. This issue occurred both during read operations and during read and subsequent deletion operations and has now been resolved.
Impacts:
INUBIT-21545, SUPPORT-12422, SUPPORT-14127
When accessing NetApp Share using the VFS Connector, attempts to delete empty directories failed. This issue has now been resolved.
Impacts:
INUBIT-21721
If schema validation with Schematrons was performed under high load, execution errors could occur. This problem has now been fixed, and validation now works flawlessly even under high load.
Impacts:
INUBIT-21789, SUPPORT-12422
An issue when reading and filtering files via the Samba protocol has been fixed. This could result in the error "STATUS_NOT_A_DIRECTORY," which would cause processing to abort. This problem has now been resolved, and the filtered list of files is output.
Impacts:
INUBIT-22130, SUPPORT-13467
Added “Safe writing” option to the VFS Connector for all supported input formats.
Impacts:
INUBIT-22182, SUPPORT-14787
Writing VFS files to a single directory on the target system resulted in a module execution error. This issue has now been resolved.
Impacts:
INUBIT-18425, SUPPORT-11629
Support has been added for directly editing the AS2 module properties Mime.Decrypt.Keystore and Mime.Verify.X509 in the deployment dialog. If necessary, update the deployment.xml file in the Process Engine.
Impacts:
-
Workbench - Import / Export / Deployment
INUBIT-20491, SUPPORT-12862, SUPPORT-14271
A problem with the automatic placement of connection lines after drag-and-drop has been fixed. The inserted module is now correctly connected even when positioned in front of or behind scopes and other tools.
Impacts:
INUBIT-20618, SUPPORT-13451, SUPPORT-13482
Prerequisite
-
Writing a timestamp value to an MSSQL database
Change
Writing date values could lead to errors if the language of the accessing database user specified a data format other than YYYY-MM-DD. This issue has now been resolved, and the timestamp passed in the workflow in YYYY-MM-DD format is now correctly converted to the target format expected in the database and saved there.
Necessary Adjustments
If you have previously worked around the problem by reformatting the timestamp, this reformatting must be undone. It will no longer work after applying this patch.
Impacts:
INUBIT-20930
The OpenSSL style configuration is deprecated with Tomcat 10.
With Tomcat 9, OpenSSL style configuration is supported like this:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Nio2Protocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" keystoreFile="/absolute/path/to/keystore.jks" keystorePass="<keypass>"/>
With Tomcat 10, OpenSSL style configuration is deprecated but default JSSE connector is supported:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Nio2Protocol"
maxThreads="150" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateKeystoreFile="/absolute/path/to/keystore.jks" certificateKeystorePassword="<keypass>" type="RSA" />
</SSLHostConfig>
</Connector>
Impacts:
-
Application - Process Engine
INUBIT-21105
Due to the change in the underlying technical REST framework, the "Allow fallback to insecure trust manager" option is no longer selectable independently. This option is now only selectable if the "Allow fallback to insecure hostname verification" option is enabled.
Breaking Change
The following module configurations can no longer be applied as before:
-
Enabled: "Allow fallback to insecure trust manager"
-
Disabled: "Allow fallback to insecure hostname verification"
Incorrectly configured modules may fail during execution and must then be manually adjusted.
Temporary Workaround
Both fallback options can be enabled using the -Dfeature.enable.restconnector.insecure.fallback=true switch in the Process Engine startup script. This also enables the option for insecure hostnames. Use this switch only in exceptional cases.
We recommend using secure connections that do not require any kind of fallback.
Impacts:
INUBIT-21167
A normal (graceful) shutdown of the Process Engine is now logged in the system log. Previously, it only appeared in the startShutdown.log file.
Impacts:
-
Process Engine - Logging
INUBIT-21498
The UI setting in the input connector configuration has been revised so that invalid values for "Max. number files" and "Max. total size" are now intercepted and corrected. This prevents incorrect values from being entered in these places via the UI.
Impacts:
INUBIT-21542, SUPPORT-14141
A problem in the INUBIT repository that occurred when using Keycloak as the IdP has been fixed. If usernames with mixed uppercase and lowercase letters were created, an error occurred when accessing the repository for these users.
Impacts:
-
Component - Repository
INUBIT-21724, SUPPORT-14341
Fixed an issue in DB Explorer that prevented the DB Connector XML input structure from being generated.
Impacts:
INUBIT-21795, SUPPORT-14425
An issue with displaying the selected encoding on the server side has been fixed. The display is now correct.
Impacts:
INUBIT-21812, SUPPORT-14669
A compatibility issue with the JSON adapter has been fixed when configured with the default conversion setting "Generic" (only the module property "json.domain.Type" is set). The adapter now runs correctly again.
The previous workaround, which involved editing the module and publishing it again immediately, is no longer necessary.
Impacts:
INUBIT-21842
The error "IndexArrayOutOfBoundsException" when setting filters on a monitoring table has been fixed.
Impacts:
INUBIT-22053
With BPC 5.0, the transmission of the session ID in the response changes. The INUBIT Process Engine now supports both the BPC 4.x and BPC 5.0 formats.
Impacts:
-
BPC - General
INUBIT-21086
Ein Problem bei der Bereitstellung des Deploymentprotokolls wurde behoben. Die Details werden nun wieder vollständig angezeigt.
Impacts:
-
Workbench - Import / Export / Deployment
-
Workbench - Report Generator
INUBIT-21155, SUPPORT-14639
When starting a process engine configured with a MariaDB database for the first time, warning messages could appear in the log. This issue has now been resolved.
Impacts:
-
Application - Process Engine
INUBIT-21368
The warnings in the trace.log about property merging conflicts that were reported when starting the Process Engine have been fixed.
Impacts:
-
Process Engine - Logging
INUBIT-21437
The variable mapping dialog has been optimized to ensure that all content is displayed with sufficient space, especially the fold-out side tabs.
Impacts:
INUBIT-21541
Geschweifte Klammern sind Sonderzeichen und dienen als Platzhalter. Sie können einen REST Input-Listener nutzen, um Teile des Aufrufpfades als Workflow-Variablen auszugeben.
Breaking Change
Im REST-Connectoren vom Typ Medium oder Output sind Pfadparameter mit geschweiften Klammern ({}) nicht erlaubt.
Beispiel: https://<hostname>:<port>/ibis/rest/rc/Listener1/{myOrderID}
Im Modulwizard und bei der Ausführung eines REST Connectors erscheint eine entsprechende Fehlermeldung.
Impacts:
9.0.1
Release Date: 2025-10-08
Breaking Changes
|
A breaking change may require manual adjustments by the administrator. Please read the description. |
INUBIT-20877
The button for updating the INUBIT BPC modules has been removed. Please ensure that the corresponding modules are present in the BPC’s deploy directory. If the BPC is deployed via the installer, the modules should be present.
Impacts:
INUBIT-21683
The Data Stream Analyzer could be forced to use MimeUtil to determine the MIME type using the special module property "datastreamanalyzer.mode." This option has now been removed. Apache Tika is now always used for analysis.
Breaking Change
If the module property "datastreamanalyzer.mode" is explicitly set in the Data Stream Analyzer, it no longer has any effect. Apache Tika is always executed internally to analyze the data stream. This may lead to a change in the detected MIME type.
Impacts:
Security Fixes
|
Security fixes include the remediation of security-related vulnerabilities. In addition to INUBIT’s own code, this also includes updating and replacing third-party components used. |
New Functionalities - Improvements
INUBIT-21534
The ZUGFeRD utility has been extended to support reading and writing of PDFs of type PDF/A-3B and PDF/A-3U.
Impacts:
INUBIT-20877
The button for updating the INUBIT BPC modules has been removed. Please ensure that the corresponding modules are present in the BPC’s deploy directory. If the BPC is deployed via the installer, the modules should be present.
Impacts:
INUBIT-20895
The "Migrate to Saxon 10" option has been removed from the Workbench. The necessary Saxon adjustments will be performed automatically during the migration or import.
Impacts:
-
Workbench - XPath-Assistant / Execution
INUBIT-21452
The REST API endpoints now return the response in the format requested by the client. The same applies to error messages. The default is "application/json"; for XML, "application/xml" must be specified in the Accept header.
Impacts:
INUBIT-21683
The Data Stream Analyzer could be forced to use MimeUtil to determine the MIME type using the special module property "datastreamanalyzer.mode." This option has now been removed. Apache Tika is now always used for analysis.
Breaking Change
If the module property "datastreamanalyzer.mode" is explicitly set in the Data Stream Analyzer, it no longer has any effect. Apache Tika is always executed internally to analyze the data stream. This may lead to a change in the detected MIME type.
Impacts:
Bug Fixes
INUBIT-21287
If INUBIT is used with Keycloak, the backup files created so far are incomplete and the diagram, module, and repository data of INUBIT users are missing. This ticket will resolve the issue, and the backup files created from now on will be complete.
| After applying this patch, we recommend creating a new backup file. Previously created backups should no longer be used. |
Impacts:
INUBIT-17227, SUPPORT-7809
The FTP Connector plugin has been corrected so that it now terminates correctly in a timeout situation and the workflow aborts with a corresponding message due to this error.
Impacts:
INUBIT-18817, SUPPORT-12176
Fixed an issue in the module wizard on the MDN validator page that prevented the stored certificate from being displayed.
Impacts:
INUBIT-21659
An error when creating an SQL statement caused an error when executing the Midnight Task and has now been fixed.
Impacts:
-
Application - Process Engine
INUBIT-21125
The online documentation in version 9.0 is now called from the INUBIT 9.0 Workbench.
Impacts:
-
Application - Workbench
9.0.0
Release Date: 2025-09-10
Breaking Changes
|
A breaking change may require manual adjustments by the administrator. Please read the description. |
INUBIT-20752
The Remote Connector has been updated with INUBIT 9.0.
Breaking Change
The Remote Connector in INUBIT 9.0 can no longer be used in INUBIT 8.1 and earlier. Adding it in the Connection Manager is no longer possible, significantly limiting maintenance and monitoring.
Impacts:
-
Connection Manager
INUBIT-21095
The HTTP status description available in the restConnector.responseStatusDescription variable has changed. If you need the value of this variable, adjust your logic to the new values.
The following table illustrates the new values:
| HTTP status code | HTTP status description before 9.0 | HTTP status description from 9.0 onwards |
|---|---|---|
100 |
The client should continue with its request |
Continue |
101 |
The server is willing to change the application protocol being used on this connection |
Switching Protocols |
102 |
Interim response used to inform the client that the server has accepted the complete request, but has not yet completed it |
Processing |
200 |
The request has succeeded |
OK |
201 |
The request has been fulfilled and resulted in a new resource being created |
Created |
202 |
The request has been accepted for processing, but the processing has not been completed |
Accepted |
203 |
The returned meta-information is not the definitive set as available from the origin server |
Non-Authoritative Information |
204 |
The server has fulfilled the request but does not need to return an entity-body, and might want to return updated meta-information |
No Content |
205 |
The server has fulfilled the request and the user agent should reset the document view which caused the request to be sent |
Reset Content |
206 |
The server has fulfilled the partial get request for the resource |
Partial Content |
207 |
Provides status for multiple independent operations |
Multi-Status |
300 |
The requested resource corresponds to any one of a set of representations |
Multiple Choices |
301 |
The requested resource has been assigned a new permanent URI |
Moved Permanently |
302 |
The requested resource can be found under a different URI |
Found |
303 |
The response to the request can be found under a different URI |
See Other |
304 |
The client has performed a conditional GET request and the document has not been modified |
Not Modified |
305 |
The requested resource must be accessed through the proxy given by the location field |
Use Proxy |
307 |
The requested resource resides temporarily under a different URI |
Temporary Redirect |
400 |
The request could not be understood by the server due to malformed syntax |
Bad Request |
401 |
The request requires user authentication |
Unauthorized |
402 |
This code is reserved for future use |
Payment Required |
403 |
The server understood the request, but is refusing to fulfill it |
Forbidden |
404 |
The server has not found anything matching the request URI |
Not Found |
405 |
The method specified in the request is not allowed for the resource identified by the request URI |
Method Not Allowed |
406 |
The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to the accept headers sent in the request |
Not Acceptable |
407 |
This code is similar to Unauthorized, but indicates that the client must first authenticate itself with the proxy |
Proxy Authentication Required |
408 |
The client did not produce a request within the time that the server was prepared to wait |
Request Timeout |
409 |
The request could not be completed due to a conflict with the current state of the resource |
Conflict |
410 |
The requested resource is no longer available at the server and no forwarding address is known |
Gone |
411 |
The server refuses to accept the request without a defined content length |
Length Required |
412 |
The precondition given in one or more of the request header fields evaluated to false when it was tested on the server |
Precondition Failed |
413 |
The server is refusing to process a request because the request entity is larger than the server is willing or able to process |
Payload Too Large |
414 |
The server is refusing to service the request because the request URI is longer than the server is willing to interpret |
URI Too Long |
415 |
The server is refusing to service the request because the entity of the request is in a format not supported by the requested resource for the requested method |
Unsupported Media Type |
416 |
For byte ranges, this means that the first byte position were greater than the current length of the selected resource |
Requested range not satisfiable |
417 |
The expectation given in the request header could not be met by this server |
Expectation Failed |
422 |
The server understands the content type of the request entity and the syntax of the request entity is correct but was unable to process the contained instructions |
Unprocessable Entity |
423 |
The source or destination resource of a method is locked |
Locked |
424 |
The method could not be performed on the resource because the requested action depended on another action and that action failed |
Failed Dependency |
429 |
The server is refusing to service the request because the user has sent too many requests in a given amount of time (\"rate limiting\") |
Too Many Requests |
500 |
The server encountered an unexpected condition which prevented it from fulfilling the request |
Internal Server Error |
501 |
The server does not support the functionality required to fulfill the request |
Not Implemented |
502 |
The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting to fulfill the request |
Bad Gateway |
503 |
The server is currently unable to handle the request due to a temporary overloading or maintenance of the server |
Service Unavailable |
504 |
The server, while acting as a gateway or proxy, did not receive a timely response from the upstream server specified by the URI (e.g. HTTP, FTP, LDAP) or some other auxiliary server (e.g. DNS) it needed to access in attempting to complete the request |
Gateway Timeout |
505 |
The server does not support, or refuses to support, the protocol version that was used in the request message |
HTTP Version not supported |
507 |
The method could not be performed on the resource because the server is unable to store the representation needed to successfully complete the request |
Insufficient Storage |
Impacts:
INUBIT-21115
Starting with INUBIT 9.0, REST connectors containing multiple path parameters with the same name will no longer execute.
The following actions will result in errors in the corresponding connectors:
-
Registering listener connectors at server startup
-
Enabling
-
Publishing
-
Importing
-
Deploying
-
Breaking Change*
Path parameter names must not be used multiple times. Correct any duplicates accordingly.
Impacts:
INUBIT-21215
Starting with INUBIT 9.0, REST connectors whose path parameter contains a "." (period) will no longer be executed. The following actions will cause errors in the corresponding connectors:
-
Registering listener connectors at server startup
-
Activating
-
Publishing
-
Importing
-
Deployment
Breaking Change
Path parameter names may no longer contain periods. Correct any incorrect names accordingly.
Impacts:
INUBIT-21097
The feature available up to and including INUBIT 8.1, which allowed sending a request with the query parameter method=<HTTP method> and thus overriding the HTTP method at the endpoint, has been deprecated and is no longer available.
Breaking Change
Endpoints must now be called using the HTTP method with which they are exposed in the API. Overriding the HTTP method is no longer possible.
Impacts:
Security Fixes
|
Security fixes include the remediation of security-related vulnerabilities. In addition to INUBIT’s own code, this also includes updating and replacing third-party components used. |
INUBIT-19477, SUPPORT-14890
A potential XXE vulnerability in the INUBIT REST API has been fixed. The following switches can be used to reject XML data that potentially exploits vulnerabilities:
# External references in prologs are not resolved
-feature.load.external.dtd=true
# Doctype prologs are not processed
feature.disallow.doctype=true
# Disable resolution of parameter entities
feature.enable.parameter.entity=true
# Disable resolution of global entities
feature.enable.general.entity=true
Recommendation: Enable these switches in production systems to prevent potential security issues when processing XML.
Impacts:
-
Application - Process Engine
New Functionalities - Improvements
INUBIT-2946, SUPPORT-3538
The Web Service Connector module wizard has been enhanced so that when a keystore is stored, the keystore password is also saved and used at runtime. If the keystore and password do not match, the module will fail to execute, or the keystore cannot be stored in the module.
Impacts:
INUBIT-18677, SUPPORT-13290
If the FTP connector is configured with a server via FTP or FTPS and the connection must be made via a proxy, this can now be configured accordingly in the module properties.
Impacts:
INUBIT-20752
The Remote Connector has been updated with INUBIT 9.0.
Breaking Change
The Remote Connector in INUBIT 9.0 can no longer be used in INUBIT 8.1 and earlier. Adding it in the Connection Manager is no longer possible, significantly limiting maintenance and monitoring.
Impacts:
-
Connection Manager
INUBIT-21318, SUPPORT-14066
A problem with the task filter REST API endpoint has been fixed so that all tasks on the process engine that match the filter criteria can now be queried across all roles.
Impacts:
-
Liferay - Tasklist Portlet
INUBIT-9599
Accessing the Process Engine via CLI is now possible even on systems that do not support a browser UI.
Impacts:
INUBIT-12869
Logging in via Workbench to a process engine that uses Keycloak as an identity provider is now token-based (OAuth). The user switches to the browser and logs in directly to Keycloak. Workbench then only uses the access token that Keycloak returns upon success.
Impacts:
-
Application - Workbench
INUBIT-12884
The Workbench login screen has been redesigned and now supports login when using Keycloak as well as internal user management.
Impacts:
-
Application - Workbench
INUBIT-13159
If Keycloak is used as an IdP, the session running there will be removed from the workbench when a user logs out.
Impacts:
-
Application - Workbench
INUBIT-13606
Login via CLI against the internal user management is still supported with user and password.
Impacts:
INUBIT-16358, SUPPORT-14728
The certificates to be stored in the connector can now also be integrated via the Credentials Manager.
Impacts:
INUBIT-16359
The certificates, keystores and truststores to be stored in the connector can now also be integrated via the Credentials Manager.
Impacts:
INUBIT-16360
The certificates, keystores and truststores to be stored in the connector can now also be integrated via the Credentials Manager.
Impacts:
INUBIT-16450, SUPPORT-5152
The Credentials Manager now supports certificate storage. This can be used in modules to securely store public keys or certificates.
Impacts:
INUBIT-16451, SUPPORT-5152
The Credentials Manager now supports key pair storage. This can be used in modules to securely store private keys or key pairs.
Impacts:
INUBIT-16578
Certificates for remote connector configuration can now be integrated into system connectors via the Credentials Manager.
Impacts:
INUBIT-18382
The option to limit GUI threads has been removed under "General Settings". Any number of UIs can now connect to the Process Engine.
Impacts:
INUBIT-18597
The tunnel functionality of the INUBIT Process Engine has already been discontinued and is now removed.
Impacts:
-
Application - Process Engine
-
Application - Workbench
INUBIT-19261, SUPPORT-13702
Additional endpoints for deleting diagrams and modules, as well as their versions, have been added to the Process Engine REST API.
Impacts:
INUBIT-19478, SUPPORT-13851
INUBIT now supports Windows 2025.
Impacts:
-
Application - Process Engine
-
Application - Workbench
INUBIT-19594, SUPPORT-14890
A potential XXE vulnerability when reading the as4-gateway.xml file has been closed.
Impacts:
INUBIT-19607
Support for "userType=processUser" has been removed from the following REST API endpoints:
-
/ready
-
/user/users
-
/user/roles
-
/user/hasrole
-
/partnermanagement/data
-
/diagrams/**
-
/modules/**
Impacts:
INUBIT-19654
When OAuth is enabled, the CLI now redirects to the configured authorization server to perform user login via OAuth.
Impacts:
INUBIT-20099
The INUBIT CLI now allows OAuth authentication even when no browser is available.
Impacts:
INUBIT-20116
The SOAP API in the INUBIT Process Engine has been removed. All access is now via the REST API.
Impacts:
-
Application - Process Engine
INUBIT-20303
Workbench and CLI now use OAuth for authentication against the Process Engine. Basic Auth is still supported as a fallback, but it is deprecated and no longer recommended for security reasons.
Impacts:
-
Application - Workbench
INUBIT-20431
The JSON validator uses only modern way to validate the JSON with backward compatibility. Removed the legacy way to validate the JSON.
Impacts:
INUBIT-20537
To set the username and password for the Keycloak connection, the values can now be passed as environment variables:
-
Username: INUBIT_PE_KEYCLOAK_USERNAME
-
Password: INUBIT_PE_KEYCLOAK_PASSWORD
If the environment variables are not set, the values from the JSON configuration file are used.
Impacts:
-
Application - Process Engine
INUBIT-20591
Keycloak is now the default preconfigured user management system in the INUBIT Process Engine. Please fill out the required JSON configuration file correctly so that the server can start successfully.
Internal user management is still offered, but is not suitable for use in production environments.
Impacts:
-
Application - Process Engine
INUBIT-20679, SUPPORT-12661, SUPPORT-13404, SUPPORT-3238, SUPPORT-8069, SUPPORT-9724
When executing asynchronous workflow jumps with the same process ID via WFC, in which a multiplexer bundles incoming data streams, it is currently not possible to distinguish between the different executions at the mux. Therefore, the mux merges the first incoming data streams, which is not always desired.
The new module property "CreateModuleRunId" (type: Boolean) has been introduced at the workflow connector, which allows the multiplexer to distinguish between different asynchronous workflow executions. The module property must be created manually and assigned the desired value ("true", "false").
Impacts:
INUBIT-20858
The keycloak_template.json file has been expanded to include a description of all available options. This means you can find the documentation directly in the file, rather than in the online documentation.
Impacts:
Bug Fixes
INUBIT-17168
A problem with detecting the port on which the INUBIT Process Engine is running has been improved so that it now works flawlessly even when using multiple ports.
Impacts:
-
Application - Process Engine
INUBIT-21056, SUPPORT-13940
Fixed a memory issue in the Workbench when repeatedly running diagram deployment.
Impacts:
-
Workbench - Import / Export / Deployment
INUBIT-21122
A performance issue when inserting large amounts of data into a MySQL database has been fixed.
Impacts:
INUBIT-20642, SUPPORT-14751
An issue with executing the INUBIT and Remote Connector service scripts under Linux has been fixed, so that the execution for retrieving the currently running instance now works correctly again.
Impacts:
-
Application - Process Engine
INUBIT-20778
Reading the contents of database tables failed when using some database types (including MySQL). This issue has now been resolved.
Impacts:
INUBIT-20856
If Keycloak is configured as the IdP in a process engine, the user base will not be changed during migration or backup restoration. All INUBIT users must be manually created in Keycloak before the migration/backup.
Impacts:
INUBIT-21040
Using the CLI has changed slightly. To access the help, you must explicitly pass the -h or --help parameter.
Impacts:
INUBIT-21095
The HTTP status description available in the restConnector.responseStatusDescription variable has changed. If you need the value of this variable, adjust your logic to the new values.
The following table illustrates the new values:
| HTTP status code | HTTP status description before 9.0 | HTTP status description from 9.0 onwards |
|---|---|---|
100 |
The client should continue with its request |
Continue |
101 |
The server is willing to change the application protocol being used on this connection |
Switching Protocols |
102 |
Interim response used to inform the client that the server has accepted the complete request, but has not yet completed it |
Processing |
200 |
The request has succeeded |
OK |
201 |
The request has been fulfilled and resulted in a new resource being created |
Created |
202 |
The request has been accepted for processing, but the processing has not been completed |
Accepted |
203 |
The returned meta-information is not the definitive set as available from the origin server |
Non-Authoritative Information |
204 |
The server has fulfilled the request but does not need to return an entity-body, and might want to return updated meta-information |
No Content |
205 |
The server has fulfilled the request and the user agent should reset the document view which caused the request to be sent |
Reset Content |
206 |
The server has fulfilled the partial get request for the resource |
Partial Content |
207 |
Provides status for multiple independent operations |
Multi-Status |
300 |
The requested resource corresponds to any one of a set of representations |
Multiple Choices |
301 |
The requested resource has been assigned a new permanent URI |
Moved Permanently |
302 |
The requested resource can be found under a different URI |
Found |
303 |
The response to the request can be found under a different URI |
See Other |
304 |
The client has performed a conditional GET request and the document has not been modified |
Not Modified |
305 |
The requested resource must be accessed through the proxy given by the location field |
Use Proxy |
307 |
The requested resource resides temporarily under a different URI |
Temporary Redirect |
400 |
The request could not be understood by the server due to malformed syntax |
Bad Request |
401 |
The request requires user authentication |
Unauthorized |
402 |
This code is reserved for future use |
Payment Required |
403 |
The server understood the request, but is refusing to fulfill it |
Forbidden |
404 |
The server has not found anything matching the request URI |
Not Found |
405 |
The method specified in the request is not allowed for the resource identified by the request URI |
Method Not Allowed |
406 |
The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to the accept headers sent in the request |
Not Acceptable |
407 |
This code is similar to Unauthorized, but indicates that the client must first authenticate itself with the proxy |
Proxy Authentication Required |
408 |
The client did not produce a request within the time that the server was prepared to wait |
Request Timeout |
409 |
The request could not be completed due to a conflict with the current state of the resource |
Conflict |
410 |
The requested resource is no longer available at the server and no forwarding address is known |
Gone |
411 |
The server refuses to accept the request without a defined content length |
Length Required |
412 |
The precondition given in one or more of the request header fields evaluated to false when it was tested on the server |
Precondition Failed |
413 |
The server is refusing to process a request because the request entity is larger than the server is willing or able to process |
Payload Too Large |
414 |
The server is refusing to service the request because the request URI is longer than the server is willing to interpret |
URI Too Long |
415 |
The server is refusing to service the request because the entity of the request is in a format not supported by the requested resource for the requested method |
Unsupported Media Type |
416 |
For byte ranges, this means that the first byte position were greater than the current length of the selected resource |
Requested range not satisfiable |
417 |
The expectation given in the request header could not be met by this server |
Expectation Failed |
422 |
The server understands the content type of the request entity and the syntax of the request entity is correct but was unable to process the contained instructions |
Unprocessable Entity |
423 |
The source or destination resource of a method is locked |
Locked |
424 |
The method could not be performed on the resource because the requested action depended on another action and that action failed |
Failed Dependency |
429 |
The server is refusing to service the request because the user has sent too many requests in a given amount of time (\"rate limiting\") |
Too Many Requests |
500 |
The server encountered an unexpected condition which prevented it from fulfilling the request |
Internal Server Error |
501 |
The server does not support the functionality required to fulfill the request |
Not Implemented |
502 |
The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting to fulfill the request |
Bad Gateway |
503 |
The server is currently unable to handle the request due to a temporary overloading or maintenance of the server |
Service Unavailable |
504 |
The server, while acting as a gateway or proxy, did not receive a timely response from the upstream server specified by the URI (e.g. HTTP, FTP, LDAP) or some other auxiliary server (e.g. DNS) it needed to access in attempting to complete the request |
Gateway Timeout |
505 |
The server does not support, or refuses to support, the protocol version that was used in the request message |
HTTP Version not supported |
507 |
The method could not be performed on the resource because the server is unable to store the representation needed to successfully complete the request |
Insufficient Storage |
Impacts:
INUBIT-21115
Starting with INUBIT 9.0, REST connectors containing multiple path parameters with the same name will no longer execute.
The following actions will result in errors in the corresponding connectors:
-
Registering listener connectors at server startup
-
Enabling
-
Publishing
-
Importing
-
Deploying
-
Breaking Change*
Path parameter names must not be used multiple times. Correct any duplicates accordingly.
Impacts:
INUBIT-21215
Starting with INUBIT 9.0, REST connectors whose path parameter contains a "." (period) will no longer be executed. The following actions will cause errors in the corresponding connectors:
-
Registering listener connectors at server startup
-
Activating
-
Publishing
-
Importing
-
Deployment
Breaking Change
Path parameter names may no longer contain periods. Correct any incorrect names accordingly.
Impacts:
INUBIT-21097
The feature available up to and including INUBIT 8.1, which allowed sending a request with the query parameter method=<HTTP method> and thus overriding the HTTP method at the endpoint, has been deprecated and is no longer available.
Breaking Change
Endpoints must now be called using the HTTP method with which they are exposed in the API. Overriding the HTTP method is no longer possible.
Impacts: