Migration Notes for Axon.ivy Engine 6.0 (Säntis)

This document informs you in detail how to migrate the data and projects of an existing Axon.ivy Engine 5.1 installation to a new Axon.ivy Engine 6.0 installation.

Table of Content:


Updated to PrimeFaces 5.3

PrimeFaces and PrimeFaces extensions libraries have been updated to the newest versions.
See the Designer Migration Notes for more information.


New default PrimeFaces theme

The default PrimeFaces theme is now modena-ivy and now longer ivy. The new theme is required by the portal application. To use the ivy theme from 5.1 configure it in the /webapps/ivy/WEB-INF/lib/web.xml or on the application using the AdminUI and the application configuration property jsf.primefaces.theme.

If another theme than the default was defined in the /webapps/ivy/WEB-INF/lib/web.xml it will still be used but you cannot configure the theme on the application then. Modify the web.xml as follows so that your default theme is used and you can additionally configure the theme on the application:

      <context-param>
        <param-name>primefaces.THEME</param-name>
        <param-value>le-frog</param-value>
      </context-param> 

to

    <context-param>
      <param-name>primefaces.THEME</param-name>
      <param-value>#{ivyPrimefacesThemeResolver.getTheme('le-frog')}</param-value>
    </context-param>  


Updated to Java 8

Java 7 is out of support since April 2015. Therefore, we moved our whole development to Java 8 thus the new minimal version to run Rich Dialogs is now Java 8. Rich Dialogs will not run any more with older Java versions.


Public API change

Removed Method IIvyScriptContext.getContext(IResponse response)

The Java only Public API method IIvyScriptContext.getContext(IResponse response) has been removed from the interface IRequest. Projects using this method will fail. If the IIvyScriptContext is still needed an IRequest could be upcasted to a IProcessModelVersionRequest. Ivy.request() already returned an IProcessModelVersionRequest.


Changed behavior of ISession.loginSessionUser(String username, String password) and ISession.logoutSessionUser()

The Public API method to login or logout has changed. In past, both methods had reset all currently running tasks of the current session, even the current running one. Therefore the related methods ISession.loginSessionUser(String username, String password, long currentTaskId) or ISession.logoutSessionUser(long currentTaskId) had to be used instead commonly inside a process.
With this version, the named method does no longer reset the currently running task. But it still resets other running tasks of the session. Conveniently some example IvyScript calls old vs. new:

  • ivy.session.loginSessionUser("user", "pass", ivy.task.getId()) is now the same as ivy.session.loginSessionUser("user", "pass")
  • ivy.session.logoutSessionUser(ivy.task.getId()) is now the same as ivy.session.logoutSessionUser()

Miscellaneous

New HTTP Status Codes

If a user tries to work on a task there are enhanced error messages with other HTTP status codes now.
See New and Noteworthy for more details.


Active Directory and Novell eDirectory groups (roles) are now cached in the System Database

In order to improve performance of Active Directory and Novell eDirectory security system, the information which user owns which roles are now cached in the system database. They are only synchronized, when the user itself is synchronized. This happens in following cases:

  • Automatically daily security synch
  • Manually triggered security synch
  • When the user logs in

In the past, role membership has been looked up directly from Active Directory or Novell eDirectory, any time they were needed. This caused a lot more requests to the Active Directory or Novel eDirectory server but made changes immediately visible to ivy.


New Default Garbage Collection Settings

The default garbage collection settings were changed. The garbage collection pauses that occur every 10 minutes are much shorter now.
See Engine Guide > Configuration > GC Optimization for more details.


Portal Application

Axon.ivy Engine comes now with a default portal application. It will be set up automatically on first engine startup.
To prevent automatic creation of the portal application, remove the folder <server root>/applications/Portal of your engine installation before startup.
If you already have an application with the name 'Portal', the default portal application will not be deployed.
Furthermore, the default portal application comes with some demo users. Change their passwords or delete them, before going into production.