I think I know what the problem was!
There was a database trigger on Batch table to assign next id before each insert statement. Apparently this trigger had conflict with SequenceGenerator. After dropping the trigger now it works fine.
[Message sent by forum member 'mohammadwrk' (mohammadwrk)]
http://forums.java.net/jive/thread.jspa?messageID=227372