Because random, generic Java classes can't be instrumented with @EJB, only specific server manged entities such as Servlets and other EJB's. (The list a little more extensive than that, but those are the "big ones".)
If you wish to use an EJB from a random java class, you need to look it up via JNDI.
[Message sent by forum member 'whartung' (whartung)]
http://forums.java.net/jive/thread.jspa?messageID=251637