I have solved the problem. As you said, the JNDI name for the bean should be "ejbName/remote". I made a mistake that I used a wrong jar in my classpath.
Thanks all of you.
But many articles about EJB3.0 told me that the JNDI name of the Bean should be the beanName regradless of the invocation came from local or remote. So why JBoss uses differentiate the local and remote JNDI name. It's very discommodiousness.
JNDI bindings are not defined by the EJB specification. We use the bean name prefixed by the deployment and suffixed by the type of interface.
i have another problem. How can i limit the number of active bean instances in jboss? Thank u