[ 
https://issues.apache.org/jira/browse/WW-5009?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16758946#comment-16758946
 ] 

Yasser Zamani commented on WW-5009:
-----------------------------------

Thank you [~JCjA492kH6347Vb10Ja53]! But I think it's not a nice idea and I 
think it doesn't have a logical evidence to force user a synchronization 
proposed above (when it's internally resolvable). Despite how much 
refactor/modifications are needed, I think instead we should fix 
{{DefaultJSONWriter}}. Did you mean you already have seen that it isn't 
resolvable and using java {{synchronized}} feature is the only available 
solution? I feel it should be already fixable to be thread-safe.

> EmptyStackException in JSON plugin due to concurrency
> -----------------------------------------------------
>
>                 Key: WW-5009
>                 URL: https://issues.apache.org/jira/browse/WW-5009
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Plugin - JSON
>    Affects Versions: 2.5.20
>         Environment: JDK 1.8_0_191
> Tomcat 9.0.12
>            Reporter: Eduardo Quintanilla
>            Assignee: Yasser Zamani
>            Priority: Critical
>              Labels: json, json-rpc
>             Fix For: 2.5.21, 2.6
>
>         Attachments: logs.txt, struts-json-example-master.zip
>
>
> EmptyStackException in JSON plugin due to concurrency
> Note: The issue was found in an app that was upgraded from version 2.3.34 
> Logs: [^logs.txt]
> I created a sample application that should help reproducing the error.
> [^struts-json-example-master.zip]
> The error happened opening the app (localhost/struts-json-example) in 4 
> different browsers / sessions.
> As a workaround I have overridden the JSONInterceptor so a new instance of 
> JSONUtil is used with every request and the issue is not happening anymore. I 
> suppose there is a performance cost with that change but for now it works.
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to