Bonjour,

Je souhaiterais avoir votre opinion sur la meilleur façon de gérer l'héritage et le polymorphisme. Je développe en JSF et EJB3.
J'ai une application permettant de gérer des articles (livres ou cdrom).
J'ai une classe mère Article et deux classes filles livre et cdrom.
J'ai une couche métier avec une méthode ajouterArticle(Article article).
Je peux donc passer en argument un objet livre ou un objet cdrom.

Question 1 :
Au niveau de JSF, suis-je obligé de créer une page pour saisir un livre et une page pour saisir un cdrom ?

Je souhaite aussi, avoir une page permettant de lister tous les articles, ou tous les livres ou tous les cdrom.

Pour lister tous les articles, pas de pb, j'ai une méthode listerArticles();
avec la requête suivante : em.createQuery("SELECT a from Article a").getResultList();

Question 2 :
Pour avoir uniquement les livres ou cdrom, dois-je avoir deux autres méthodes
listerDisques() avec em.createQuery("SELECT d from Disque d").getResultList();
et listerCdrom() avec em.createQuery("SELECT c from Cdrom c").getResultList(); ?
ou puis-je utiliser uniquement ma méthode listerArticles() et faire ensuite un filtre au niveau de ma page JSF ?

merci pour votre aide.