Upgrade

Installation

1. Older versions

The oldest version, which can be upgraded to Intrexx 19.03, is Intrexx 7.

2. Upgrade to Intrexx 19.03

With Intrexx 19.03, you receive a completely revised version of the low-code platform, Intrexx. We have taken extensive measures to make your portals even safer, such as a mandatory switch to HTTPS, password encryption with the PBKDF2 process and much more. We have simplified the architecture of web connectors in relation to security and future updates (load balancing, TLS offloading, flexibility). The complete overhaul of the business logic with Intrexx 19.03 offers a whole range of new benefits when designing applications.

Many changes had to be made to the existing APIs and interfaces to implement all of these changes. We make every effort to stay as backwards compatible as possible but we cannot always guarantee that everything can be migrated reliably. This especially applies to the use of internal JavaScript methods as there was not an API for these in the past. Therefore, we recommend that you plan your upgrade carefully and to perform it in a separate test environment first. Plan in a timeframe for any potential adjustments. Your Intrexx Partner is happy to support you here.

Please create a backup of your portal server and database before upgrading. Deactivate any virus scanners for the duration of the upgrade process. Please note that a portal export alone is not a sufficient backup. Please perform the upgrade on a test system to begin with and not within a live environment right away.

3. HTTPS

Intrexx now expects by default that portals are run with an encrypted HTTP connection (HTTPS). This provides the following benefits:

4. Preparations

Before upgrading an Intrexx Portal Server on Windows with Integrated Authentication and upstream Internet Information Server, please make sure to check whether you have an HTTPS certificate. The following components need to be installed:

5. Javascript API changes

6. Velocity functions

The method DsucUser#changePassword(JdbcConnection, int, byte[]) has been permanently removed after 4 years deprecation.

7. Intrexx authentication

Intrexx 19.03 no longer supports the Intrexx challenge-response authentication. This means changes need to be made for deployment and web service logins in Intrexx 19.03:

8. Portals and portlets

The new portlet framework allows you to create responsive portal pages. The setup of the grid structures is based on the settings in the Applications module.

Portlets across multiple columns:

After the upgrade, existing portal pages will be converted into the new format. However, the conversion cannot take into account whether a portlet took up multiple columns. These settings need to be applied in the grid after the updated.

Portlets in application pages:

As the portlet framework works completely asynchronously, any request values must be transferred to the integrated pages via the portlet container. This cannot be performed automatically during the upgrade. Therefore, if filters of integrated portlets access request values, you should focus your attention on this point.

Load pages from within portlets

If buttons with the "Open in current window" setting open pages from within a portlet, then the page will be opened in the portlet. If the page contains a lot of elements, all page elements may not be displayed in some cases. The "Open target in main window" setting is much more suitable in this case as the loaded page will be displayed in its entirety.

9. Miscellaneous

Buttons

Buttons with "Button" selected as the type and that jump "To the start page of the portal" are no longer supported. They are patched into a "Text" button. The style class is patched to "Link_Standard", custom styles are removed.

View tables

JavaScript that uses Velocity in view tables to access the respective table data record: Scripts that use $drRecord do not work anymore because $drRecord is no longer resolved at this point. Instead, the Velocity part should be transferred to a "data-" attribute, for example, and then read via JavaScript later.

Example:
ActionControl in a view table with the following script call:
takeOverTest($drRecord.getValueHolder('integervcontrolB53C1BD7').getValue(), getElement("195D00AD893B2C017E050B1D916688927AAFE825"));
The part
$drRecord.getValueHolder('integervcontrolB53C1BD7').getValue()
is defined as the value of an attribute (e.g. "data-bugid") on the Expert tab, and the script call is changed to
takeOverTest(this.dataset.bugid, getElement("195D00AD893B2C017E050B1D916688927AAFE825"));

Other changes

  1. "PlainPasswordLoginModule" has been removed. It can be replaced like-for-like by "IntrexxLoginModule".
  2. editcontrols/datetime/UpDateTimeMainEditControl: "toLocalDateString()" removed, 'upDateControl.toLocalFormat()' can be used instead
  3. Intrexx challenge-response authentication is no longer supported. This means changes need to be made in the deployment and for web service logins:
    • We recommend only providing web services with TLS encryption
    • Web service requests from clients - especially Intrexx clients - that use challenge-response authentication need to be reconfigured to log in with username, domain and password
    • When switching to TLS, it may be necessary to provide the consuming clients or portals with the SSL certificate of the Intrexx server
    • The class "de.uplanet.lucy.server.auxiliaries.RemoteAuthProxy", which was used by only a few customers, has been removed. If there are customers who still need this class, it can be reactivated upon request.
  4. The callable "DSPassword" has been removed
  5. The method "DsucUser#changePassword(JdbcConnection, int, byte[])" has been removed after 4 years of deprecation
  6. Session management via the URL parameter "rq_SId" is no longer supported
  7. For reasons of security, there are only HTTP-only cookies with (in the case of HTTPS) with a set secure flag
  8. The class "PortalServerPath" has been removed