在EJb 2.0中,在ejb-jar.xml中,曾经有过这个条目:
<ejb-ref>
<ejb-ref-name>ejb/fooremote</ejb-ref-name>
<ejb-ref-type>Session</ejb-ref-type>
<remote>test.FooRemoteIF</remote>
</ejb-ref>
在带注释的ejb3.0中,我们使用@Remote代替<remote>
和@Stateless
<ejb-ref-type>.
但是在带注释的bean接口中我没有看到{{1}的任何JNDI声明}}。那么客户端如何知道EJb接口的jndi名称
答案 0 :(得分:2)
@EJB(name="...")
相当于<ejb-ref-name>
。也就是说,如果您注释要注入的字段或方法,那么您根本不需要查找无状态会话bean。你仍然需要有状态会话bean的JNDI名称,所以我的推荐是类级@EJB(name="...")
(如果你有几个,可能在@EJBs
内)。