I'm confused between two attributes of @Resource
annotation.
Java Documentations says :
mappedName : A product specific name that this resource should be mapped to. The name of this resource, as defined by the name element or defaulted, is a name that is local to the application component using the resource. (It's a name in the JNDI java:comp/env namespace.) Many application servers provide a way to map these local names to names of resources known to the application server. This mapped name is often a global JNDI name, but may be a name of any form.
lookup : The name of the resource that the reference points to. It can link to any compatible resource using the global JNDI names.
My Question is how to choose between mappedName and lookup, based on what criteria?