Ajout attribut de type Objet casse l'editeur de template

Bonjour,

Lors de l’ajout d’un attribut de type objet (pas un objet métier) dans un template de formulaire via l’éditeur de formulaire, rien ne se passe à l’écran lors de l’enregistrement de ce nouvel attribut. Je ne peux pas recliquer sur enregistrer car l’attribut à bien été créer (pop up erreur, le nom de l’attribut existe dejà). Je ne peux ensuite plus me rendre sur l’éditer de formulaire pour ce template. (Cf log erreur si dessous)

Pour info, ce que je souhaite faire : Permettre à un administrateur d’associer, sur n’importe quel enregistrement métier, une liste d’utilisateurs autorisés à le voir. Si aucune restriction n’est posée sur un enregistrement, il reste visible par tous. Si une restriction est définie, seuls les utilisateurs listés peuvent le voir.

Je dois donc pouvoir choisir un enregistrement sans connaitre son objet métier à l’avance, d’où mon utilisation de l’attribut de
Si vous avez déjà des solutions pour ce problème je suis aussi preneur.

Technical information

Instance /health

[Platform]
Status=OK
Version=6.3.7
Variant=light
BuiltOn=2026-04-03 09:45
Git=6.3/3f01baa9ac25b9b349f607f8d913f3984ec7c924
Encoding=UTF-8
EndpointIP=10.40.55.46
EndpointURL=http://xxx/devjjb
TimeZone=Europe/Paris
SystemDate=2026-05-06 11:33:34

[Application]
ApplicationVersion=1.0.0
ContextPath=/devjjb
ContextURL=https://xxx/devjjb
ActiveSessions=1
TotalUsers=8
EnabledUsers=6
LastLoginDate=2026-05-06 11:05:08

[Server]
ServerInfo=Apache Tomcat/9.0.108
ServerType=WEB
ServerDevMode=true
ServerCompiler=true
ServerActiveSessions=0
ServerSessionTimeout=30
CronStarted=true

[OS]
Name=Linux
Architecture=amd64
Version=5.14.0-570.60.1.el9_6.x86_64
SystemEncoding=UTF-8

[Disk]
DiskFree=6483
DiskUsable=6483
DiskTotal=12224

[JavaVM]
Version=21.0.9
Vendor=Red Hat, Inc.
VMName=OpenJDK 64-Bit Server VM
VMVersion=21.0.9+10-LTS
ScriptEngine=rhino
ScriptEngineVersion=Rhino 1.7.13 2020 09 02
HeapFree=1283548
HeapSize=1482752
HeapMaxSize=1482752
TotalFreeSize=1283548

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

[Database]
Vendor=3
VendorName=postgresql
ProductName=PostgreSQL
ProductVersion=16.9
DriverName=PostgreSQL JDBC Driver
DriverVersion=42.7.10
DBDate=2026-05-06 11:33:34
DBDateOffset=0
DBPatchLevel=6;P03;ec60a897be456b54a0334ce46619a1a4;7
UsingBLOBs=true

[Healthcheck]
Date=2026-05-06 11:33:34
ElapsedTime=374


Simplicité logs
2026-05-06 11:31:50,625|SIMPLICITE|ERROR||http://xxx/devjjb|/devjjb|ERROR|system|com.simplicite.webapp.servlets.ui.EditTemplateServlet|service||Event: Unexpected error
    java.lang.IllegalArgumentException: bound must be positive
     at java.base/java.util.Random.nextInt(Random.java:557)
     at com.simplicite.util.Tool.randomInt(Tool.java:5697)
     at com.simplicite.util.ObjectCore.testData(ObjectCore.java:9073)
     at com.simplicite.util.ObjectCore.testData(ObjectCore.java:9221)
     at com.simplicite.util.ObjectCore.testData(ObjectCore.java:9208)
     at com.simplicite.util.EditTemplate.response(EditTemplate.java:431)
     at com.simplicite.util.EditTemplate.service(EditTemplate.java:210)
     at com.simplicite.webapp.servlets.ui.EditTemplateServlet.service(EditTemplateServlet.java:132)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:623)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:199)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
     at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
     at com.simplicite.webapp.filters.RewriteFilter.doFilter(RewriteFilter.java:72)
     at com.simplicite.webapp.filters.AbstractFilter.doFilter(AbstractFilter.java:49)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
     at com.simplicite.webapp.filters.AuthMethodFilter.doFilter(AuthMethodFilter.java:221)
     at com.simplicite.webapp.filters.AbstractFilter.doFilter(AbstractFilter.java:49)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
     at com.simplicite.webapp.filters.HTTPHeadersFilter.doFilter(HTTPHeadersFilter.java:39)
     at com.simplicite.webapp.filters.AbstractFilter.doFilter(AbstractFilter.java:49)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:156)
     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
     at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
     at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:762)
     at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:656)
     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346)
     at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397)
     at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
     at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935)
     at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1826)
     at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
     at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1189)
     at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:658)
     at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
     at java.base/java.lang.Thread.run(Thread.java:1583)

Bonjour,

Nous reproduisons le comportement avec un champ de type objet.
Nous vous informons dès que la correction est livrée.

C’est résolu (c’était un pb de robustesse de la valeur fictive de ce type d’attribut sur l’éditeur de formulaire lorsqu’il s’agit d’un attribut avec une liste d’objets sélectionnables vide).

Ce sera livré dans la révision 6.3.9