Qu’est ce que AOP ?
AOP est le framework technique sur lequel repose notre solution Axelor ERP, CRM et BPM (Business Process Management). Pour plus d’informations, vous pouvez consulter notre documentation technique en ligne
https://docs.axelor.com/adk/7.0/index.html
Axelor Open Platform 5.4
Améliorations
Amélioration des raccourcis clavier
Les raccourcis Ctrl+F et Ctrl+G entraient en conflit avec les raccourcis navigateur. Ils ont donc été changés en Alt+F et Alt+G respectivement.
Une fenêtre de dialogue listant l’ensemble des raccourcis clavier a été ajoutée au menu utilisateur.
https://docs.axelor.com/adk/5.4/dev-guide/web-client/shortcuts.html
Remplacement de hashKey par equalsInclude pour les tests d’égalité
L’attribut equalsInclude permet de marquer un champ comme devant être utilisé dans les tests d’égalité. L’attribut hashKey n’est plus utilisé pour cet usage.
https://docs.axelor.com/adk/5.4/dev-guide/models/models.html#fields
Toolbar et menubar sur les widgets dashlet et champs multirelationnels
Dans ces widgets, les trois premiers boutons de la barre d’outils et le premier menu de la barre de menus de la vue liste sont maintenant affichés.
https://docs.axelor.com/adk/5.4/dev-guide/views/grid.html#toolbar https://docs.axelor.com/adk/5.4/dev-guide/views/grid.html#menubar
Nouveautés
Fonction JPQL json_set
Cette fonction permet de changer des attributs JSON et vient compléter json_extract qui permet d’extraire un attribut JSON. https://docs.axelor.com/adk/5.4/dev-guide/models/custom-fields.html#jpql-functions
Attribut help sur les widgets panel
Permet d’afficher un texte d’aide au passage de la souris, comme il est déjà possible de le faire sur de nombreux autres widgets. https://docs.axelor.com/adk/5.4/dev-guide/views/form.html#panel
Couleurs Material Design pour les hilite de la vue liste
En plus des styles Bootstrap actuels, les couleurs Material Design on été ajoutées (les mêmes couleurs que pour les widgets MultiSelect, SingleSelect et TagSelect).
https://docs.axelor.com/adk/5.4/dev-guide/views/grid.html#hilite
Attribut x-popup-maximized=”all|editor|selector” sur les champs relationnels
Permet de maximiser les pop-ups pour éditer, sélectionner ou les deux. https://docs.axelor.com/adk/5.4/dev-guide/web-client/widgets.html#extra-attributes
Informations sur les vues dans le contexte
Le contexte contient de nouveaux attributs : _viewName, _viewType, _views et _source.
https://docs.axelor.com/adk/5.4/dev-guide/actions/index.html#context
Signal de réponse refresh-tab
Alors que le signal refresh-app déclenche le rafraîchissement au niveau navigateur, le nouveau signal refresh-tab permet, quant à lui, de rafraîchir seulement l’onglet actuel dans l’application. https://docs.axelor.com/adk/5.4/dev-guide/modules/coding.html#response-signals
Recherche sur la valeur des champs traduisibles
Lorsque l’on effectue une recherche sur un champ marqué translatable, la recherche se fait maintenant sur la traduction des valeurs en fonction de la langue de l’utilisateur connecté, et non sur la clé d’origine.
Indexes sur les tables des entités MailMessage et MetaHelp
Bouton de réinitialisation de la recherche avancée
Affichage du statut du processus en tant que tag dans la vue formulaire
https://docs.axelor.com/adk/5.4/dev-guide/modules/events.html#workflow-status-tags
Menu dans la vue formulaire pour afficher le processus lié (module axelor-bpm)
Formatage des champs date et des champs numériques en fonction de la langue/pays du navigateur
Formatage des champs date/datetime et des champs numériques (integer, long, decimal) sur les différents types de vue, y compris les graphiques. Les filtres de template currency, percent, number et date ont aussi été redéfinis pour prendre en compte la langue/pays du navigateur.
Personnalisation des vues liste de premier niveau
Possibilité d’ajouter, supprimer et réordonner les colonnes d’une vue liste via une boîte de dialogue
Passage automatique en mode édition sur les champs multilignes des listes éditables
Auparavant, il fallait passer par le crayon. Cela concerne les champs multilignes et ceux utilisant le widget html.
Attributs externes via le menu Administration → Gestion des vues → Attributs de vue
Attribut css sur les boutons de la vue liste
https://docs.axelor.com/adk/5.4/dev-guide/views/grid.html#button
Attribut x-show-icons sur les champs multirelationnels
Cet attribut qui permet de choisir les icônes à afficher dans le widget et qui ne fonctionnait que sur les éditeurs fonctionne maintenant aussi sur les champs multirelationnels.
https://docs.axelor.com/adk/5.4/dev-guide/web-client/widgets.html#extra-attributes
Élément tooltip dans les champs
En plus des éléments editor et viewer dans les champs, l’élément tooltip permet de spécifier un template pour une info-bulle. https://docs.axelor.com/adk/5.4/dev-guide/views/form.html#field-tooltip
Axelor Open Platform 6
Nouveautés
Java 8 → Java 11
Java 11 est la version LTS actuelle avec des mises à jour publiques au moins jusqu’à septembre 2026.
Guide de migration : https://docs.oracle.com/en/java/javase/11/migrate/
Attention au type long supprimé de Nashhorn (moteur JavaScript): https://bugs.openjdk.java.net/browse/JDK-8144020
Google Guice 4.2 → Weld 3.1
Guice ne connaît plus de mises à jour majeures depuis plus de deux ans.
Weld est l’implémentation de référence pour CDI 2.0, largement inspiré de Guice.
Les différences les plus importantes par rapport à Guice :
- Pas de chain binding. À la place, on utilise des annotations @Alternative et @Priority sur les classes.
- Les annotations @Transactional sont découvertes au point d’injection.
Détails : https://jakarta.ee/specifications/cdi/2.0/cdi-spec-2.0.html
Authentification
Système d’authentification réécrit pour permettre de mixer librement les systèmes (par exemple, il n’était pas possible d’activer à la fois OAuth 2.0 et OpenID Connect) et d’ajouter des implémentations extérieures à la plateforme.
Systèmes d’authentification implémentés dans la plateforme :
- Formulaire (par défaut)
- OAuth 2.0
- OpenID Connect
- SAML 2.0
- LDAP
- CAS
- Basic Auth
Définition d’un système d’authentification externe à la plateforme dans application.properties :
auth.provider.myprovider.client = MyClientClassName
auth.provider.myprovider.configuration = MyConfigClassName
auth.provider.myprovider.title = My Client Title
auth.provider.myprovider.icon = path/to/my.icon.png
Autres mises à jour notables
- Gradle 6.x
- Hibernate 5.4
- Groovy 2.5
- Support MySQL 8
- JUnit 5
- Node.js intégré
Pour toutes vos questions techniques, et même fonctionnelles, d’ailleurs, pensez à utiliser notre forum
Et pour soutenir notre communauté et apporter votre contribution, il y a notre Github