Below is the list of breaking changes in model handling by Origam HTML5:
Menu model
- Lazily-loaded screens need to have a sort set.
Workflows
- Origam HTML5 is stricter when merging XML into data set. This means the XML structure needs to be same as the structure of data set. It is not possible to produce just a fragment in XML and merge it into the data set.
Example:
<Order Id="xxx" .../>
with the root XML element being Order
was good enough to be merged into a data structure with an Order
entity.
Now ROOT
element is mandatory and to successfully merge the Order
entity you need to follow the following format:
<ROOT>
<Order Id="xxx" .../>
</ROOT>
Also data type handling is stricter when merging:
- It is still OK if an attribute is empty - it will be handled as NULL
- It used to be OK if e.g. Guid/Date/Number data type attribute was invalid value – the data were handled as NULL. Now you get an exception.
Rules
If you see an error message "Rule invalid. Rule evaluation did not return the row data."
, similar to the case above your complex data rule is missing the ROOT
element.
Transformations
All transformations need to be of type XslCompiledTransform (in Settings parameter XsltEngine).
Authentication
-
AjaxLogin
API was removed - Database field
OrigamUser.IsLockedOut
does nothing now, insteadOrigamUser.LastLockoutDate
is used and possibly expired by settingAutoUnlockAfterSpecifiedTime
andLockoutTimeMinutes
underUserLockoutConfig
in the appsettings.json file.
Tokens
Tokens created by the html5 server will not be accepted by the flash server, e.g. if the password reset link is opened in a client application still running on the flash server.