[
https://issues.apache.org/jira/browse/XERCESJ-1345?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Michael Glavassevich reassigned XERCESJ-1345:
---------------------------------------------
Assignee: Michael Glavassevich
> Listener Count datastructure in DocumentImpl should be a document variable
> and not static.
> ------------------------------------------------------------------------------------------
>
> Key: XERCESJ-1345
> URL: https://issues.apache.org/jira/browse/XERCESJ-1345
> Project: Xerces2-J
> Issue Type: Improvement
> Components: DOM (Level 2 Events)
> Affects Versions: 2.9.1
> Reporter: Ludger Bünger
> Assignee: Michael Glavassevich
> Attachments: Xerces-Eventlistener-Count-patch.txt
>
>
> The listener count datastructure is currently a static global hashtable.
> This has the disadvantage of not being thread-safe even across otherwise
> totally independent document instances since each uses the same static
> hashtable to keep track of the number of event listeners registered upon the
> document.
> A second effect of this is:
> Deserializing a document with listeners registered upon it in a freshly
> created virtual machine (with a fresh static listener table having no
> listener count data inside) causes the document to believe no event listeners
> are registered upon it and thus not causing dom events to be fired even
> though listeners are registered.
> Thus serialisation/deserialisation of documents having listeners registered
> upon them is factually broken since the very first implementation of event
> listeners using the static listener counters (which is if I did not get it
> wrong since event listeners have been implemented in xerces).
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]