Local calls can only be done in the same server.
I thonk that means the place where the ejb's live.
A local java class is not there. So only the remote stuff will work.
Outside of the deployment package of the EJB
(an ear in your case), but inside the Application Server,
you can lookup the local home in global jndi.
By default it is bound at local/<ejb-name> or
<local-jndi-name> in jboss.xml to override.
I finally figured out exactly what you said, I needed to use the name the bean was bound to in the global JNDI namespace (as seen in the JNDI view web page). Thanks for the feedback. I'm cooking now!