Je travaille avec jee et wildfly depuis quelques jours maintenant j'ai un problème. J'ai créé quelque chose comme ceci:@Produces cause Bean nom ambigu
@Stateless
public class BookService {
@EJB
private BookDao bookDao;
public void addBook(Book book) {
bookDao.saveBook(book);
}
public Optional<Book> getBookById(Long id) {
return bookDao.getBookById(id);
}
public void updateBook(Book book) {
bookDao.updateBook(book);
}
@Produces
@Named("books")
public List<Book> getAllBooks() {
return bookDao.getAllBooks();
}
}
Ensuite, je tryied utiliser #{books}
dans jsf mais je suis exception:
2017-05-23 08: 49: 07447] oreille artefact: oreille: Erreur lors de artefact déploiement. Voir le journal du serveur pour plus de détails.
[23/05/2017 08: 49: 07448] oreille artefact: oreille: java.lang.Exception: { "WFLYCTL0080: Services a échoué" => { Lab6 "jboss.deployment.unit \.". oreille \ "WeldStartService" => "org.jboss.msc.service.StartException en service jboss.deployment.unit \." Lab6.ear \ » WeldStartService. Impossible de démarrer le service
causée par: org.jboss.weld.exceptions.DeploymentException: WELD-001414: Le nom du bean est ambigu.Les livres de noms résout en beans:
Méthode Producer [Liste] avec des qualificatifs [@default @Named @Any] a déclaré que [[BackedAnnotatedMethod] @Produces @Named publics app.service.BookService.getAllBooks()],
Méthode Producer [Liste] avec qualificateurs [@Default @Named @Any] déclarés comme [[BackedAnnotatedMethod] @Produits @Named public app.service.BookService.getAllBooks()] "}," WFLYCTL0412: Services requis qui ne sont pas installés: "=> [ "jboss.deployment.unit \" Lab6.ear \], "de WFLYCTL0180: avec services manquants/dépendances non disponibles "" WeldStartService." => non définie}
Quelle est la source du problème.
Veuillez partager des informations sur votre structure de déploiement. Je suppose que je serai l'AER et que vous aurez une dépendance deux fois, ce qui donnera deux producteurs identiques. Assurez-vous que le 'BookService' est sur un seul emplacement dans votre déploiement. – Siliarus