Можно ли использовать @EJB внутри другого EJB? Я пытаюсь сделать это сейчас, и мой EJB заканчивается нулевым. Я опишу мою проблему на примере.
@Stateless
@LocalBean
@Local(LoginServiceLocal.class)
public class LoginService implements LoginServiceLocal {
public void createLogin(String email, String password) { ... }
}
@Stateless
@LocalBean
@Local(AccountServiceLocal.class)
public class AccountService implements AccountServiceLocal {
@PersistenceContext(unitName = "accounts")
private EntityManager accountEntityManager;
@EJB
private LoginServiceLocal loginService;
public void createAccount(Account account, String email, String password) {
accountEntityManager.persist(account);
loginService.createLogin(email, password);
}
}
Разве это возможно? Я должен также упомянуть, что я использую встроенный контейнер (через EJBContainer), и я ищу AccountService с помощью JNDI, однако, когда я пытаюсь вызвать loginService.createLogin в AccountService, loginService является нулевым (не инициализируется @EJB).
Возможно ли то, что я пытаюсь сделать?
Спасибо.