Problem description
Problèmes divers avec les objects “service-simplicite” instanciés sur une 5.2 avec une source “objet métier” hébergée sur une 5.1
Steps to reproduce
I have reproduced the problem on an up-to-date Simplicité instance
and those are the steps to do it:
1.Exposer un objet métier (standard) sur une instance 5.1
2.Configurer un objet “service-simpiocite” sur une instance 5.2
3. L’accès en lecture est OK
4. Afficher le popup de recherche
→ problème n°1: les champs de recherche sont affichés en double (seul l’un des deux champs active le filtre apparemment)
→ voir copies d’écran dans “Other relevant information”
5. Editer un formulaire puis sauvegarder
→ problème n°2.1: la modification n’est pas sauvegardée (aucune exception/erreur n’est affichée à l’écran)
→ problème n°2.2: les logs systèmes indiquent un problème de parsing JSON / duplicate key row_id
Technical information
Instance /health
5.2 (config “service-simplicite”)
[Platform]
Status=OK
Version=5.2.4
BuiltOn=2022-05-20 16:13
Git=5.2/3ce8b1329500cc6509184aeb3bd647e02c569e65
Encoding=UTF-8
EndpointIP=149.202.171.75
EndpointURL=http://renault.simplicite.io:10028
TimeZone=Europe/Paris
SystemDate=2022-05-23 09:57:44
[Application]
ApplicationVersion=1.0.0
ContextPath=
ContextURL=https://bcsi.renault.simplicite.io
ActiveSessions=1
TotalUsers=12
EnabledUsers=9
LastLoginDate=2022-05-23 09:21:09
[Server]
ServerInfo=Apache Tomcat/9.0.63
ServerType=WEB
ServerActiveSessions=1
ServerSessionTimeout=30
[OS]
Name=Linux
Architecture=amd64
Version=3.10.0-1160.62.1.el7.x86_64
SystemEncoding=UTF-8
[Disk]
DiskFree=25146
DiskUsable=23037
DiskTotal=50286
[JavaVM]
Version=17.0.1
Vendor=Eclipse Adoptium
VMName=OpenJDK 64-Bit Server VM
VMVersion=17.0.1+12
ScriptEngine=rhino
ScriptEngineVersion=Rhino 1.7.13 2020 09 02
HeapFree=95285
HeapSize=478208
HeapMaxSize=524288
TotalFreeSize=141365
[Cache]
ObjectCache=389
ObjectCacheMax=10000
ObjectCacheRatio=3
ProcessCache=8
ProcessCacheMax=10000
ProcessCacheRatio=0
APIGrantCache=0
APIGrantCacheMax=1000
APIGrantRatio=0
[Database]
Vendor=2
ProductName=MySQL
ProductVersion=5.5.68-MariaDB
DriverName=MySQL Connector/J
DriverVersion=mysql-connector-java-8.0.29 (Revision: dd61577595edad45c398af508cf91ad26fc4144f)
DBDate=2022-05-23 09:57:44
DBDateOffset=0
DBPatchLevel=5;P02;b9f4fe8fb3118bd1efdcb4fcd73ae33e
UsingBLOBs=true
[Healthcheck]
Date=2022-05-23 09:57:45
ElapsedTime=432
5.1 (config “objet métier”)
[Platform]
Status=OK
Version=5.1.43
BuiltOn=2022-04-29 15:09
Git=5.1/b1c022956d87408a4a9535fb1589fd828ef92f68
Encoding=UTF-8
EndpointIP=172.17.0.6
EndpointURL=http://7ec5e6f49410:8080
TimeZone=Europe/Paris
SystemDate=2022-05-23 09:58:57
[Application]
ApplicationVersion=1.0.0
ContextPath=
ContextURL=https://re7.rfi.re7.aws.renault.com
ActiveSessions=3
TotalUsers=49
EnabledUsers=45
LastLoginDate=2022-05-23 09:20:58
[Server]
ServerInfo=Apache Tomcat/9.0.62
ServerType=WEB
ServerActiveSessions=7
[OS]
Name=Linux
Architecture=amd64
Version=4.14.275-207.503.amzn2.x86_64
DockerImageName=centos7
SystemEncoding=UTF-8
[JavaVM]
Version=17.0.3
Vendor=Eclipse Adoptium
VMName=OpenJDK 64-Bit Server VM
VMVersion=17.0.3+7
ScriptEngine=rhino
ScriptEngineVersion=Rhino 1.7.13 2020 09 02
HeapFree=287045
HeapSize=506944
HeapMaxSize=1773888
TotalFreeSize=1553989
[Cache]
GrantCache=0
GrantCacheMax=0
GrantCacheRatio=0
ObjectCache=204
ObjectCacheMax=10000
ObjectCacheRatio=2
ProcessCache=1
ProcessCacheMax=10000
ProcessCacheRatio=0
[Database]
Vendor=3
ProductName=PostgreSQL
ProductVersion=10.18
DriverName=PostgreSQL JDBC Driver
DriverVersion=42.3.4
DBDate=2022-05-23 09:58:57
DBDateOffset=0
DBPatchLevel=5;P01;425e2ee5f00a2dcaca289d821f852cca
UsingBLOBs=true
[Healthcheck]
Date=2022-05-23 09:58:57
ElapsedTime=311
Simplicité logs
5.2 (config “service-simplicite”)
2022-05-23 09:25:40,708|SIMPLICITE|ERROR||http://renault.simplicite.io:10028||ECORED0001|system|com.simplicite.util.engine.ObjectDirect|update||Error IT4ITProduct
org.json.JSONException: Duplicate key "row_id" at 26 [character 27 line 1]
at org.json.JSONTokener.syntaxError(JSONTokener.java:507)
at org.json.JSONObject.<init>(JSONObject.java:252)
at org.json.JSONObject.<init>(JSONObject.java:414)
at com.simplicite.util.ObjectServiceSimplicite.saveService(ObjectServiceSimplicite.java:771)
at com.simplicite.util.ObjectServiceSimplicite.updateService(ObjectServiceSimplicite.java:817)
at com.simplicite.util.engine.ObjectManager.update(ObjectManager.java:2568)
at com.simplicite.util.engine.ObjectDirect.update(ObjectDirect.java:435)
at com.simplicite.util.ObjectDB.update(ObjectDB.java:1270)
at com.simplicite.util.engine.ObjectManager.save(ObjectManager.java:3392)
at com.simplicite.util.engine.ObjectDirect.save(ObjectDirect.java:478)
at com.simplicite.util.ObjectDB.save(ObjectDB.java:1313)
at com.simplicite.webapp.tools.JSONServletTool.update(JSONServletTool.java:1253)
at com.simplicite.webapp.ObjectJson.update(ObjectJson.java:611)
at com.simplicite.webapp.tools.JSONServletTool.businessObjectService(JSONServletTool.java:634)
at com.simplicite.webapp.servlets.AbstractJSONServlet.service(AbstractJSONServlet.java:102)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at com.simplicite.webapp.filters.AuthMethodFilter.doFilter(AuthMethodFilter.java:219)
at com.simplicite.webapp.filters.AbstractFilter.doFilter(AbstractFilter.java:49)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
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:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at com.simplicite.webapp.filters.RewriteFilter.doFilter(RewriteFilter.java:62)
at com.simplicite.webapp.filters.AbstractFilter.doFilter(AbstractFilter.java:49)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:183)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
at com.simplicite.tomcat.valves.APISessionValve.invoke(APISessionValve.java:242)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:687)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:890)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1743)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.base/java.lang.Thread.run(Thread.java:833)
5.1 (config “objet métier”)
aucune écriture significative dans ce contexte
Browser logs
NA