Export tar.gz éclaté json : paramétrage des vues incomplet

Request description

Bonjour,

Lorsqu’on fait un export tar.gz éclaté (json) d’un module une partie du paramétrage des vues n’est pas exporté, le contenu de l’onglet “Page d’accueil”.

Steps to reproduce

A partir du module de Demo :

  1. Modifier le paramétrage de la vue DemoAdminHome afin de compléter tous les champs de l’onglet “Page d’accueil” :

  1. Faire un export tar.gz éclaté du module Demo.
  2. Quand on regarde le contenu du fichier DemoAdminHome.json présent dans l’archive on constate qu’il manque le paramétrage de l’onglet “Page d’accueil” dont le thème :

image

Remarque
Je voulais essayer avec la dernière version 6.0.16 mais quand j’utilise ce tag j’ai une version 6.1.0 à la place …

Technical information

Instance /health

[Platform]
Status=OK
Version=6.0.15
BuiltOn=2024-07-05 18:31
Git=6.0/6fe341ff46405c844ad3c1bf573339ed56073a16
Encoding=UTF-8
EndpointIP=
EndpointURL=http://c32800e69eea:8080
TimeZone=UTC
SystemDate=2024-07-15 17:12:35

[Application]
ApplicationVersion=1.0.0
ContextPath=
ContextURL=
ActiveSessions=1
TotalUsers=7
EnabledUsers=5
LastLoginDate=2024-07-15 17:03:56

[Server]
ServerInfo=Apache Tomcat/9.0.90
ServerType=WEB
ServerActiveSessions=1
ServerSessionTimeout=30
CronStarted=true

[OS]
Name=Linux
Architecture=amd64
Version=5.15.0-113-generic
DockerImageName=almalinux9
SystemEncoding=UTF-8

[JavaVM]
Version=21.0.3
Vendor=Eclipse Adoptium
VMName=OpenJDK 64-Bit Server VM
VMVersion=21.0.3+9-LTS
ScriptEngine=rhino
ScriptEngineVersion=Rhino 1.7.13 2020 09 02
HeapFree=145717
HeapSize=402432
HeapMaxSize=2033664
TotalFreeSize=1776949

[Cache]
ObjectCache=657
ObjectCacheMax=10000
ObjectCacheRatio=6
ProcessCache=6
ProcessCacheMax=10000
ProcessCacheRatio=0
APIGrantCache=0
APIGrantCacheMax=1000
APIGrantRatio=0

[Database]
Vendor=3
VendorName=postgresql
ProductName=PostgreSQL
ProductVersion=13.15 (Debian 13.15-1.pgdg120+1)
DriverName=PostgreSQL JDBC Driver
DriverVersion=42.7.3
DBDate=2024-07-15 17:12:35
DBDateOffset=0
DBPatchLevel=6;P00;b58ecfbaa6f45a96bdc206655ecd3d19;15
UsingBLOBs=true

[Healthcheck]
Date=2024-07-15 17:12:35
ElapsedTime=7

Sur ce point je regarde rapidement.

Il y a dû y avoir un pb dans le processus de build de la v6 suite à son adaptation pour la 6.1.

En attendant la correction on a supprimé touts les images 6.0 > 6.0.15 du registry.

Les images 6.0.16 ont été rebuildées, ça devrait être bon. Désolé pour ce raté.

Pour mémoire, bien que la 6.1 soit officiellement releasée, les tags 6-latest[-light]* et 6[-light] restent pour le moment calées sur la 6.0. La raison est que pour le moment il n’est pas possible d’upgrader directement de la 5.3 à la 6.1 (il faut passer par la 6.0). Les tags 6-latest[-light]* et 6[-light] seront basculés sur la 6.1 lorsque cette possibilité sera offerte.

Merci David, est-ce que vous avez pu regarder le problème avec l’export tar.gz également ?

Il me semble que ce point lié aux héritages des vues a été réglé.

Le pb se situait au niveau de l’export donc il faut donc s’assurer d’avoir exporté le module depuis une instance à jour.

Est-ce le cas ?

Après avoir retesté sur des instances 6.0 à jour avec le module Demo exporté et importé en tar.gz (i.e. JSON eclaté), à l’arrivée il manque effectivement le thème sur la vue DemoAdminHome.

NB: il y a le même symptôme en JSON non éclaté donc c’est un pb lié au format JSON, en XML non éclaté et en XML éclaté il n’y a pas le pb

Nous allons regarder ça de plus près

Au debugger on voit que les instances utilisées pour les exports de modules JSON déclenchés depuis la UI (via boutons d’export ou via un commit Git) sont des instances “treeview” : tree_ajax_* ce qui explique le pb car il y a des règles de visibilité d’attributs sur l’objet View qui sont lié au fait que l’instance soi une instance “batch”`

image

Solution 1 = considérer que ces instances Ajax liées à ce treeview technique ModuleTV sont des batch instances… ça marchera mais c’est très moche

Solution 2 = diffuser l’information que c’est un export de module pour utiliser des instances “batch” et pas des instances “treeview”

@Francois qu’en penses tu ?

Effectivement, il me semble plus propre d’utiliser des instances batch (prefix eai_) dans le cas du treeview qui est utilisé pour sérialiser le module en JSON (éclaté en répertoires ou non).

Si l’instance de l’objet racine de l’arbre est un Module batch, tout l’arbre le sera.
On va faire ça rapidement.

Merci, j’ai testé la semaine dernière, le problème n’est plus présent

This topic was automatically closed 60 minutes after the last reply. New replies are no longer allowed.