EJB methods are all synchronized (at least as far as the developer is concerned) by the container. The specs state that you must not sychronize your methods, leave it to the container.
There is no need to synchronise EJB methods since as
per the EJB spec, they are garunteed to be
thread-safe. The EJB container ensures that only *one*
thread of execution is active in a EJBean instance
at any one time. Thats is job.