New release, new newsletter for developers!

For your information, the Simplicity platform version 4.0 P22 Release Candidate has been made available on the Git branch pre-version of the template and as a Docker beta image.

If no questions and/or blockages are raised by November 23, 2018, this version will be considered as the P22 Release version.

Thank you in advance for your help in the final validation process of this version. It is only logical that following this release we will move on to the development of P23.

For all intents and purposes, we recommend that you always visit the release notes page to get the most “up to date” information.

Changes in the “core” of the platform

  • Updated 3rd party libs.
  • I/O service is now available on 3 endpoints:
    • The I/O endpoint (/io) using I/O authentication.
    • The API endpoint (/api/io) using API authentication.
    • The UI endpoint (/ui/io) using UI authentication (the import XML & CSV pages have been refactored to use this).
  • Optimizations:
    • To limit memory usage, all interfaces use now end-to-end Java Streams instead of bytes array.
    • Some methods with bytes arrays are now deprecated AdapterIntegration, import Module/XML/ZIP…
    • File uploads are stored in the temporary directory before being placed in the dbdoc.
    • New SAX adapter for import XML (partial reading).
    • in BLOB mode: read/write use input/output stream, but some JDBC driver does not support streaming and still use bytes array.
    • XHR will post data in multi-parts mode (URL encoding as been abandoned to upload file without any base64 encoding).
    • Keep “memory free” in mind: it is now strongly recommended to refactor your code with streams/buffers reader/writer instead of huge bytes arrays.
  • Social post has now 3 options: display posts on popup (default), inline on bottom of form, and share object to social medias.
  • Improved Git export to enable Sonarqube® analysis of modules (both Rhino and Java).
  • Added Open Street Map tool class and included the Leaflet Javascript client lib.

What’s new in the user interface?

  • Refactored import XML, be careful result logs are not displayed by default to limit flow/memory size
  • Refactored import CSV with column auto-mapping and new options
    • Choose the presence of a header or not
    • Choose the type of separator of the column: semicolon’;’,’, comma’,’ pipe’,’ pipe’, or tabulation’ \t’.
    • Make a quotation
    • Add a new line
    • Make a comment
    • Choose between direct CSV => DB’ or indirect CSV=>XML=>DB

  • New display possibility for links concerning simple N, N relationships as control “pillbox”. Only the basic actions (search, add, delete) are available for this new use.

Attached is an example with a list of countries without having to display the complete list:

One development for all screens

A new category has appeared in the developers’ newsletter: Le Mobile.

With 3 billion people owning a smartphone, but no laptops, and a record penetration rate, mobiles are eating everything in their path.


In order to meet this reality Simplicity is now more easily integrated into smartphones thanks to the ability to publish on stores (Android and IOS).

We have written a short tutorial to tell you a little more about how to create, test, develop your (mobile) applications with Simplicity. So on the menu:

  • New tools based on Google Firebase to send notifications to mobile devices and browsers.
  • Creation of your hybrid application for Android and iOS.

Note, it is described in the tutorial the process for publishing on blinds but you should have your own Android and IOS accounts to publish on these blinds.

Fixes : – bugs + pleasure

  • Fixed social posts page for users without picture on legacy UI.
  • Fixed tricky ZIP & Git export issue on object’s Java coded in the context of object inheritance.
  • Fixed location of endpoint set in code (note that it breaks compatibility on some low level init API on Grant that should not be used in custom code).
  • Fixed full text search on mySQL/mariaDB.
  • Fixed remove view from template editor.
  • Fixed filter expression with parentheses.
  • Fixed Module export when parent object is outside the module.
  • Fixed SAX import to ignore non <simplicite> flow.
  • Fixed creation from responsive UI in case of objects with a custom row ID.
  • Fixed UTF-8 encoding on SVG models.
  • Fixed navigation after bulk update of foreign-keys.