Migration Notes for Xpert.ivy Designer 4.2 (Rigi) ... 4.3 (Pilatus) |
This document informs you in detail about incompatibilities that were introduced
between Xpert.ivy versions 4.2 (Rigi) and 4.3 (Pilatus) and
tells you what needs to be done to get your existing 4.2 projects
working with Xpert.ivy 4.3.
Most of the incompatibilities can be resolved automatically by invoking the project conversion in the Designer. However,�some issues may have to be fixed manually (after the
automatic conversion). Those are described in the next section. |
Due to some changes in version 4.3, it may be that your projects are using APIs that are now deprecated. Although it is not absolutely necessary that you fix the deprecated parts, it is strongly recommended to do so. The changes that were introduced with version 4.3 are described with more detail in the sections below, along with suggestions on how to fix existing code. |
The interface ch.ivyteam.ivy.ulc.shared.validation.ValidationConstants was moved to package ch.ivyteam.ivy.ulc.server.validation.ValidationConstants. The old interface is still available but deprecated.
//example usage
import ch.ivyteam.ivy.ulc.shared.validation.ValidationConstants; import com.ulcjava.base.application.util.Color; Color errorColor = ValidationConstants.ERROR_BACKGROUND; To fix all usage of the deprecated class in your projects,
you only have to perform a global search/replace operation on your
workspace:
|
To get the It is strongly recommended to fix all uses of the methods Date.toDate(), Time.toDate(), DateTime.toDate() in your projects. You could perform a global search operation on your workspace and replace the corresponding usages of toDate() with toJavaDate(). Please check each replacement, e.g. String.toDate() must not be converted in this way, see below! This final refactoring was necessary to avoid migration problems from ivy 3.x projects. |
To get an ivy Date from a String the method It is strongly recommended to fix all uses of the method String.toDate() in your projects. You could perform a global search operation on your workspace and replace the corresponding usages of toDate() with toIvyDate(). Please check each replacement, e.g. Date.toDate() must not be converted in this way, see above! |
With the release of Xpert.ivy 4.2, data caches that used the application scope where silently changed to be dependent not only from the application but from the environment too. This was very helpful to handle different tenants within one application (a situation for which you prefer that data caches are depending from the environment too). On the other hand real application data caches were no more available. This is true for both usage of data cache in the inscription masks of the database and web service steps and as well for usage in IvyScript. To fill this gap and to prevent wrong usage of data cache scopes because of the misinterpreting names, we changed the following:
Perform a global search operation on your workspace and replace the corresponding usages of getApplicationCache() with getEnvironmentCache(). Please check each replacement for the correct scope of your data caches! |
Errors while serializing/deserializing workflow or event data are
not compensated silently any more. So far, the
serialization/deserialization silently ignored values that could not be
serialized and used With Xpert.ivy 4.3 serialization/deserialization exceptions are
logged. Please analyze your log files after upgrading to 4.3 and
consider fixing those serialization/deserialization problems. If you do not require to serialize a value of a dataclass you can
fix the problem by setting the persistence flag to |
The behaviour of some Workflow API methods has been fixed. If 0 (zero)�was provided for the parameter Existing code that provides 0 (zero) for the parameter
Affected API's:Interfacech.ivyteam.ivy.worklfow.IWorkflowContext
ch.ivyteam.ivy.workflow.IWorkflowSession
The IvyAddOns project, which was delivered with Xpert.ivy 4.2, is not compatible with Xpert.ivy 4.3. If you use the IvyAddOns project in your workspace then delete the
existing IvyAddOns project and import the Xpert.ivy 4.3
compatible IvyAddOns version from the applications/utilities/IvyAddOns
directory. Please consult the Xpert.ivy 4.3 Designer Guide (> Projects > Converting old 3.x projects) to learn more about how to import and migrate 3.9 projects, so that they can be executed on a 4.3 installation. |