Hiérarchie d'interfaces et de classes
Bonjour,
Simple question à laquelle je n'ai pas encore eu de réponse : si j'ai un EJB qui implémente une interface, elle-même étendant une autre interface, dois-je mettre @Local/@Remote sur toute la hiérarchie ou seulement sur l'interface directement implémentée par mon EJB ?
Un peu de code pour illustrer :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
@Stateless
public class AckDaoJpa extends GenericModelDaoJpa<Ack, Integer>
implements AckDao {
// Implémentation des méthodes spécifiques à ce DAO.
}
public abstract class GenericModelDaoJpa<T, PK extends Serializable>
implements GenericDao<T, PK> {
@PersistenceContext(unitName="myUnit")
private EntityManager entityManager;
// Implémentation générique des méthodes communes à tous les DAO's.
}
@Local
public interface GenericDao<T, PK extends Serializable> {
// Méthodes communes à tous mes DAO's : persist, delete, findAll, ....
}
@Local
public interface AckDao extends GenericDao<Ack, Integer> {
// Méthodes spécifiques à ce DAO.
} |
Est-ce juste ?
Note : cela peut paraître bizarre comme hiérarchie mais elle fonctionne parfaitement bien en dehors des EJB's - avec Spring et le support Hibernate par exemple.
Merci d'avance.