Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

If you maintain user roles outside Pricefx, you will have to make an update reflecting this change.

Backward Compatibility Issues with ResultMatrix​

Description

In Hurricane 9.0 Java package of ResultMatrix class has been changed: ​net.pricefx.server.dto.calculation => net.pricefx.formulaengine.scripting.portlets​

  • The interface made in the original location is backwards compatible​, but inner classes e.g. ResultMatrixStyledCell and properties like entries are not.

  • As a result, import net.pricefx.server.dto.calculation.ResultMatrixStyledCell crashes.

Impact

  • This issue affects specific projects that started with version lower than Hurricane 9.x and were upgraded to 9.x.
    It affects only a minority of projects which use some specific patterns in the code (usage of strong typing, importing fully qualified class names etc.).

  • Projects started with version 9.x are not impacted​.

How to Prevent This Issue

  • If you use the functionality of ResultMatrixStyledCell, entries, getEntries() etc., test it properly. For example, if the Groovy logic uses ResultMatrix in a way that is not compatible, there will be an error in the logic (e.g. dashboard will not display or quote calculation will fail).

  • If you have IMs reading ResultMatrix data, test the functionality.

  • In some cases, the issue can be fixed if you re-save faulty logics and – if needed – the libraries they depend on.

  • In other cases, you may have to modify the logics (e.g. correct type name).

Fix

  • There will be a patch to solve the backward compatibility for cases known so far.

  • This patch will be released with the regular monthly minor release 9.3, and possibly as part of 9.2.x as well.

Note

The recommended way to create ResultMatrix is via api.newMatrix() (not by new ResultMatrix()).

Upgrade to Version 9.1 and Higher

...