Generally java.util.ConcurrentModificationException will occur when one thread to modify a Collection while another thread is iterating over it. Please check your code with this viewpoint. Below approach can be considered.
 Copy the collection object to be modified
 Modify the collection object inside the synchronized block
I miss the old days when I would think up a sinister scheme for world domination and you would show a little emotional support. So just look at this tiny ad: