Re: Coercion error for JSONObject

2021-10-06 Thread Adriaan Joubert
Hi Ben, thanks for your response! I was thinking about a custom type coercer - seems like the best bet in the short term. We will have another go at identifying the underlying cause as well - would be better if we could solve it at source. Cheers, Adriaan On Tue, 5 Oct 2021 at 22:23, Ben Weidig

Re: Coercion error for JSONObject

2021-10-05 Thread Ben Weidig
Hi Adriaan, we're using Ajax/JSONObject, too, but haven't seen such problems so far. But I'm sure it's highly dependent on the context, and concurrent requests count. For your problem, if you can't switch out the underlying data structure, you might get around it by writing a custom type coercer

Re: Coercion error for JSONObject

2021-10-05 Thread Adriaan Joubert
Hi Ben, thanks for the reply! No, the json object is not stored in the session, but it does traverse a lot of different components. The most likely cause seems to be from separate threads that we use to speed up data loading during a request, but we have not been able to pin it down - naturally we

Re: Coercion error for JSONObject

2021-10-05 Thread Ben Weidig
Hi, is the JSONObject in the Session and do you have Session locking disabled? See https://tapestry.apache.org/session-storage.html#SessionStorage-SessionLocking Changing the print-loop to check if keys still exist would just hide the underlying problem: using a data-structure concurrently that i

Coercion error for JSONObject

2021-10-05 Thread Adriaan Joubert
Hi, we intermittently see coercion errors for JSONObject - which we use frequently for ajax context information. The relevant bit of stack trace is - Caused by: java.util.ConcurrentModificationException - at java.base/java.util.LinkedHashMap$LinkedHashIterator.nextNode(LinkedHashMap.java: