WorkerRemote r = // how to obtain reference? Should I use JNDI as ClientPOJO or @EJB annotation?
You can use @EJB injection since you are using it within another server side component (i.e. the @Stateful bean). However, that doesn't mean that you cannot use JNDI lookup. You can use JNDI lookup too, but @EJB injection is a convenient way of getting hold of the bean.
Thanks Jaikiran! I didn't know that @EJB gives reference backed by stateless beans pool - I thought that's just single stateless bean injection.
I didn't know that @EJB gives reference backed by stateless beans pool - I thought that's just single stateless bean injection.
Yeah, an @EJB internally injects a proxy similar to what you would have got when you do a JNDI lookup. And it's only when you invoke on that SLSB, that the instance association happens. It's the same irrespective of whether you use JNDI lookup or @EJB injection.