Hi.
I have almost exactly the same problem. FetchType.EAGER just issues another SELECT instead of using a JOIN.
This behaviour seems very strange and I can't imagine that this is working as intended? If eager fetching refuses to use joins there is _no_ way of loading object trees of more than 2 levels using Toplink essentials, the number of queries to the database is simply unacceptable.
[Message sent by forum member 'cmnordin' (cmnordin)]
http://forums.java.net/jive/thread.jspa?messageID=226166