Problème expression calculée & guillements

Bonjour,

Nous avons identifié un problème lié à la présence de guillemets dans un champs texte utilisé dans une expression calculée via : [VALUE:nomDuChamp].
Si le contenu de “nomDuChamp” contient des guillemets on obtient l’erreur suivante :

Voici le /health de l’application :

[Platform]
Status=OK
Version=4.0.P24
BuiltOn=2020-09-23 20:50 (revision a0158ea319a5199b15f696a3ef6654d41207b651)
Encoding=UTF-8
EndpointIP=21.1.15.241
EndpointURL=http://9759b88c2d5e:8080
TimeZone=Europe/Paris
SystemDate=2020-09-24 11:49:10

[Application]
ApplicationVersion=4.0
ContextPath=
ContextURL=https://bca.dok-dev.intra.renault.fr
ActiveSessions=7
TotalUsers=4909
EnabledUsers=1230
LastLoginDate=

[Server]
ServerInfo=Apache Tomcat/9.0.38
ServerType=WEB
User=root

[OS]
Name=Linux
Architecture=amd64
Version=3.10.0-1127.19.1.el7.x86_64
SystemEncoding=UTF-8

[Disk]
DiskFree=498130
DiskUsable=498130
DiskTotal=510726

[JavaVM]
Version=14.0.2
Vendor=Red Hat, Inc.
VMName=OpenJDK 64-Bit Server VM
VMVersion=14.0.2+12
ScriptEngine=rhino
ScriptEngineVersion=Rhino 1.7.11 2019 05 30
HeapFree=1171495
HeapSize=2048000
HeapMaxSize=2764800
TotalFreeSize=1888295

[Cache]
GrantCache=45
GrantCacheMax=0
GrantCacheRatio=0
ObjectCache=684
ObjectCacheMax=10000
ObjectCacheRatio=6
ProcessCache=4
ProcessCacheMax=10000
ProcessCacheRatio=0

[Database]
Vendor=2
ProductName=MySQL
ProductVersion=5.6.39-log
DriverName=MySQL Connector/J
DriverVersion=mysql-connector-java-8.0.21 (Revision: 33f65445a1bcc544eb0120491926484da168f199)
DBDate=2020-09-24 11:49:10
DBDateOffset=0
DBPatchLevel=P24;07080dea24cae6abbf5276fb98e51e8a
UsingBLOBs=true

[Healthcheck]
Date=2020-09-24 11:49:10
ElapsedTime=295

Merci

OK on va regarder pour éviter ces erreurs mais la syntaxe est [VALUE:myField] (sans quotes), pas [VALUE:"myField"] ou [VALUE:'myField']

Ah non j’ai mal lu votre post c’est pas un pb de syntaxe du [VALUE:...] c’est la valeur elle même.

Là c’est à vous de gérer, le tag VALUE substitue la valeur telle qu’elle, à vous de savoir si celle valeur contient potentiellement des quotes ou autres.

Cette syntaxe VALUE à du sens pour des choses simples pour écrire du “vrai” code Rhino (ex: comme dans votre fonction auto appelante) c’est pas la meilleure approche, utilisez plutôt la vraie syntaxe à savoir obj.getFieldValue("myField")