Howdy --
I just wanted to add one more clarification...
When the spec (or the exam) says "from the same home", they mean / we mean "from the same deployment event".
So no matter how many times you do a JNDI lookup on a specific home, or no matter how many *instances* of the "home* (and we don't even know what that really is), the behavior is guaranteed by the spec.
But if you deploy a bean more than once, the second time you deploy it you'll have a different
EJB name and a different JNDI name. As far as the Container is concerned, each deployment of a session or entity bean generates a separate 'home', and that home is what determines whether two things are identical (stateless session beans and entities with the same PK).
Of course, there *are* some containers that will let you deploy a bean using a JNDI name that's already in use, but that's just a flaw in the deployment tools. They should NOT allow you to do this, since simply deploying a bean with a JNDI name that's in use does not constitute a real *redeployment* of the bean, and is probably just a mistake. I've seen it happen though... and then what you get back from a JNDI lookup is rather unpredictable (although consistent for the Container that lets you do it).
cheers,
Kathy