i have 2 EJB implémente même interface, j'ai quelques qualifications:multiples @Qualifier injection EJB
@java.lang.annotation.Documented
@java.lang.annotation.Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD, ElementType.TYPE,ElementType.FIELD})
@javax.inject.Qualifier
public @interface PayEseConnector {
}
et
@java.lang.annotation.Documented
@java.lang.annotation.Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD, ElementType.TYPE,ElementType.FIELD})
@javax.inject.Qualifier
public @interface MetrilioConnector {
}
exemple des EJB:
@Stateless
@PayEseConnector
@Local
public class PayEseServiceImpl implements IConnectorService {
ou
@Stateless
@MetrilioConnector
@Local
public class MetrilioServiceImpl implements IConnectorService {
i injectent un de ceux dans une classe:
public class TestResource {
@MetrilioConnector
@Inject
IConnectorService metrilioService;
et mon erreur:
Causée par: org.jboss.weld.exceptions.DeploymentException: WELD- 001408: Dépendances insatisfaites pour le type IConnectorService avec des qualificatifs @MetrilioConnector au point d'injection [UnbackedAnnotatedField] @MetrilioConnector @Inject com.real.hr.rest.TestResource.metrilioService at com.real.hr.rest.TestResource.metrilioServ ice (TestResource.java:0) WELD-001475: Les beans suivants correspondent par type, mais aucun n'a de qualificatif correspondant: - Session bean [classe com.real.hr.services.MetrilioServiceImpl avec des qualificatifs [@MetrilioConnector @Any]; les interfaces locales sont [IConnectorService], - Session bean [classe com.real.hr.services.PayEseServiceImpl avec des qualificatifs [@PayEseConnector @Any]; interfaces locales [IConnectorService]
ce que je fais mal ?, avec un @Qualifier il travaille