Udara,
You must've realized that this annotation takes in its attribute value an array of @EJB, this is used to annotate a bean that somehow refers these @EJB. In other words, doing this the
EJB's will be available in the JNDI ENC of the actual EJB, the you'll be able to lookup them through the EJBContext.lookup(...) using a relative path.
I can't also really understand the reason to it, once you could annotate a given interface inside the bean and already inject the desired EJB. Besides the possibility to lookup the bean programmatically (that's also possible after inject directly, but in this case you've already injected one instance of the given EJB), I don't see any good reason to create a reference in the JNDI ENC through annotations to lookup it using InitialContext, EJBContext, etc .. I thought the desired behavior was the opposite.
Maybe there are some obscure reason that we're not seeing that justify the use of it, if you discover, let me know please!