From what I interpret from 3.1.10. Concurrency model (it's description is hard to follow). So trying to oversimplify what it says....
Application scope - Multithreaded, concurrency protected by the servlet container?
Session scope - Multithreaded, concurrency protected by Seam serialization.
Conversation scope - Single threaded, concurrency protected by Seam serialization
Other smaller scopes - Multithreaded, concurrency not an issue since the scope on bean is short lived.
So, given these set of rules, if I am correct, you can only get a ConcurrentAccessException at an application scoped stateful bean, and is the only stateful bean that can and should accept a @Synchronized annotation (I believe there is a mistake in the documentation regarding this). Non-EJB-stateful components can have @Synchonized, but these beans will never encounter a ConcurrentAccessException. If you do get a ConcurrentAccessException anywhere else, then that would be considered a bug in seam.
Right or Wrong? ;)
Tags: ConcurrentAccessException Seam